
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */
/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */
/* DWARF original prototype: bool should_apply_static_reloc(Relocate * this, Mips_symbol<32> * gsym,
   uint r_type, Output_section * output_section, Target_mips<32,_false> * target) */

bool __thiscall
anon_unknown.dwarf_29466b::Target_mips<32,_false>::Relocate::should_apply_static_reloc
          (Relocate *this,Mips_symbol<32> *gsym,uint r_type,Output_section *output_section,
          Target_mips<32,_false> *target)

{
  byte bVar1;
  int iVar2;
  Valtype VVar3;
  bool bVar10;
  bool *pbVar4;
  uint uVar5;
  Got_offset_list *pGVar6;
  uint uVar7;
  Relocate *pRVar8;
  int *piVar9;
  undefined1 uVar11;
  Relocate *pRVar12;
  Relocate *pRVar13;
  Relocate *pRVar14;
  int *extraout_v1;
  int *piVar15;
  Symbol *sym;
  int *piVar16;
  undefined *puVar17;
  Relocate *pRVar18;
  uint uVar19;
  int iVar20;
  Output_section *pOVar21;
  Output_section *pOVar22;
  Output_section *pOVar23;
  Relocate *pRVar24;
  Relocate *in_t1;
  Relocate *pRVar25;
  Relocate *unaff_s2;
  Relocate *pRVar26;
  Relocate *unaff_s5;
  _func_int_varargs *p_Var27;
  uint *puVar28;
  undefined1 *puVar29;
  uint *unaff_s7;
  uint *puVar30;
  code *pcVar31;
  _func_int_varargs *p_Var32;
  _func_int_varargs *p_Var33;
  code *pcVar34;
  code *pcVar35;
  _func_int_varargs *unaff_s8;
  _func_int_varargs *p_Var36;
  code *pcVar37;
  code *pcVar38;
  undefined1 auStack_350 [8];
  _func_int_varargs *p_Stack_348;
  Relocate *pRStack_344;
  uint uStack_340;
  Relocate *pRStack_33c;
  int iStack_338;
  Relocate *pRStack_330;
  code *pcStack_32c;
  Relocate *pRStack_328;
  Relocate *pRStack_324;
  Output_section *pOStack_320;
  Relocate *pRStack_31c;
  uint *puStack_318;
  uint uStack_314;
  _func_int_varargs *p_Stack_310;
  code *pcStack_30c;
  int iStack_2f8;
  Relocate *pRStack_2f4;
  code *pcStack_2f0;
  _func_int_varargs *p_Stack_2ec;
  uint uStack_2e8;
  char cStack_2e1;
  Relocate *pRStack_2e0;
  Relocate *pRStack_2dc;
  Relocate *pRStack_2d8;
  int iStack_2d4;
  code *pcStack_2d0;
  Relocate *pRStack_2cc;
  Relocate *pRStack_2c8;
  Relocate *pRStack_2c4;
  Output_section *pOStack_2c0;
  Relocate *pRStack_2bc;
  uint *puStack_2b8;
  uint uStack_2b4;
  _func_int_varargs *p_Stack_2b0;
  code *pcStack_2ac;
  undefined4 uStack_298;
  int iStack_294;
  code *pcStack_290;
  Relocate *pRStack_28c;
  uint uStack_288;
  byte bStack_281;
  Relocate *pRStack_280;
  Relocate *pRStack_27c;
  Relocate *pRStack_278;
  Relocate *pRStack_274;
  int iStack_270;
  uint uStack_268;
  code *pcStack_264;
  Relocate *pRStack_260;
  Relocate *pRStack_25c;
  Output_section *pOStack_258;
  Relocate *pRStack_254;
  uint *puStack_250;
  uint uStack_24c;
  _func_int_varargs *p_Stack_248;
  code *pcStack_244;
  undefined4 uStack_230;
  Relocate *pRStack_22c;
  code *pcStack_228;
  Relocate *pRStack_224;
  uint uStack_220;
  byte bStack_219;
  Relocate *pRStack_218;
  Relocate *pRStack_214;
  Relocate *pRStack_210;
  Relocate *pRStack_20c;
  Relocate *pRStack_208;
  code *pcStack_204;
  Relocate *pRStack_200;
  Relocate *pRStack_1fc;
  Output_section *pOStack_1f8;
  Relocate *pRStack_1f4;
  uint *puStack_1f0;
  uint *puStack_1ec;
  _func_int_varargs *p_Stack_1e8;
  code *pcStack_1e4;
  undefined4 uStack_1d0;
  int iStack_1cc;
  code *pcStack_1c8;
  Relocate *pRStack_1c4;
  uint uStack_1c0;
  byte bStack_1b9;
  Relocate *pRStack_1b8;
  Relocate *pRStack_1b4;
  Relocate *pRStack_1b0;
  Relocate *pRStack_1ac;
  Relocate *pRStack_1a8;
  uint uStack_1a0;
  code *pcStack_19c;
  Relocate *pRStack_198;
  Relocate *pRStack_194;
  Output_section *pOStack_190;
  Relocate *pRStack_18c;
  uint uStack_188;
  uint *puStack_184;
  _func_int_varargs *p_Stack_180;
  code *pcStack_17c;
  undefined4 uStack_168;
  Relocate *pRStack_164;
  code *pcStack_160;
  Relocate *pRStack_15c;
  uint uStack_158;
  byte bStack_151;
  Relocate *pRStack_150;
  Relocate *pRStack_14c;
  Relocate *pRStack_148;
  Relocate *pRStack_144;
  undefined1 *puStack_140;
  code *pcStack_13c;
  Relocate *pRStack_138;
  Relocate *pRStack_134;
  Output_section *pOStack_130;
  Relocate *pRStack_12c;
  uint uStack_128;
  uint *puStack_124;
  _func_int_varargs *p_Stack_120;
  code *pcStack_11c;
  undefined4 uStack_108;
  int iStack_104;
  code *pcStack_100;
  Relocate *pRStack_fc;
  uint uStack_f8;
  byte bStack_f1;
  Relocate *pRStack_f0;
  Relocate *pRStack_ec;
  Relocate *pRStack_e8;
  Relocate *pRStack_e4;
  Relocate *pRStack_e0;
  undefined4 *puStack_d4;
  Relocate *pRStack_d0;
  Output_section *pOStack_c8;
  Relocate *pRStack_c4;
  uint uStack_c0;
  uint *puStack_bc;
  _func_int_varargs *p_Stack_b8;
  code *pcStack_b4;
  undefined4 uStack_a0;
  Relocate *pRStack_9c;
  code *pcStack_98;
  Relocate *pRStack_94;
  uint uStack_90;
  byte bStack_89;
  Relocate *pRStack_88;
  Relocate *pRStack_84;
  undefined1 *puStack_80;
  Relocate *pRStack_7c;
  Symbol *pSStack_78;
  Output_section *pOStack_74;
  int iStack_3c;
  undefined4 *puStack_38;
  Relocate *pRStack_28;
  int iStack_24;
  int iStack_20;
  
  if (((*(uint *)(r_type + 0x5c) & 2) == 0) || (this == (Relocate *)0x0)) {
    return true;
  }
  pOVar21 = output_section;
  if (&gsym[-1].field_0x6f < (undefined1 *)0xf9) {
    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)
                      (this,(int)(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)]);
    pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;
  }
  else {
    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(this,0);
    pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;
  }
  if (iVar2 != 0) {
    PTR_do_gold_unreachable_004c1a30 = pcVar35;
    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {
      iVar2 = 0x5c;
      puVar17 = PTR_s__s_004c1a50 + -0x33c8;
      pcVar37 = Target_mips<32,_true>::Relocate::should_apply_static_reloc;
      sym = (Symbol *)(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8);
      (*pcVar35)();
      if (((*(uint *)(puVar17 + 0x5c) & 2) == 0) || (sym == (Symbol *)0x0)) {
        return true;
      }
      pOVar22 = pOVar21;
      if (iVar2 - 1U < 0xf9) {
        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();
      }
      else {
        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();
      }
      if (iVar2 != 0) {
        if (*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0) {
          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);
          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,
                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);
          pcVar34 = pcVar31 + 0x3e022c;
          uVar5 = (uint)pcVar37 & 0xff;
          pOVar23 = pOVar22;
          pcStack_98 = pcVar34;
          pSStack_78 = sym;
          pOStack_74 = pOVar21;
          if (iStack_3c == 9) {
            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);
            pRVar12 = pRStack_88;
            if (this != (Relocate *)0x0) {
              unaff_s2 = (Relocate *)0x0;
              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);
              unaff_s8 = (_func_int_varargs *)&uStack_90;
              unaff_s7 = (uint *)0xff00;
              do {
                if (uVar5 == 0) {
LAB_000e9358:
                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);
                  if (pRVar12 < pRStack_28) {
                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);
                    pcVar34 = pcStack_98;
                    if (iStack_24 == 0) goto LAB_000e9610;
                    in_t1 = (Relocate *)(puVar29 + iStack_24);
                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;
                    if (uVar7 < 0xff00) {
LAB_000e948c:
                      if (uVar7 == 0) goto LAB_000e9394;
                      iVar2 = *(int *)(pcStack_98 + -0x77f0);
                      pcVar34 = pcStack_98;
                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= uVar7) goto LAB_000e962c;
                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)
                      goto LAB_000e9434;
                      bVar1 = in_t1[1].calculate_only_;
                    }
                    else {
                      if (uVar7 == 0xffff) {
                        iVar2 = *(int *)&pOVar22->entsize_;
                        pRStack_84 = pRVar12;
                        pRStack_7c = in_t1;
                        puStack_80 = puVar29;
                        if (iVar2 == 0) {
                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);
                          *(int *)&pOVar22->entsize_ = iVar2;
                        }
                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);
                        pRVar12 = pRStack_84;
                        in_t1 = pRStack_7c;
                        puVar29 = puStack_80;
                        goto LAB_000e948c;
                      }
LAB_000e9394:
                      bVar1 = in_t1[1].calculate_only_;
                    }
                    pcVar34 = pcStack_98;
                    if ((bVar1 & 0xf) == 3) {
                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];
                      if (pRVar12 == pRStack_88) {
                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>
                                  2) <= uVar7) goto LAB_000e95d8;
                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);
                        uVar7 = *(uint *)(iVar2 + 0x98);
                      }
                      else {
                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);
                        uVar7 = *(uint *)(iVar2 + 0x98);
                      }
                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;
                      uStack_90 = CONCAT13(2,uStack_90._1_3_);
                      (*(code *)unaff_s5)(iStack_20,unaff_s8);
                    }
                    else {
                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +
                                      (int)puVar29);
                      if ((Relocate *)
                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=
                          pRVar12) goto LAB_000e95bc;
                      iVar2 = *piVar9;
                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))
                      goto LAB_000e9238;
                      *piVar9 = -2;
                      uStack_90 = uStack_90 & 0xffffff;
                      (*(code *)unaff_s5)(iStack_20,unaff_s8);
                    }
                  }
                  else {
                    uStack_90 = uStack_90 & 0xffffff;
                    (*(code *)unaff_s5)(iStack_20,unaff_s8);
                  }
                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;
                }
                else {
                  pRStack_9c = (Relocate *)*puStack_38;
                  uStack_a0 = 0;
                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))
                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);
                  if (iVar2 != 0) goto LAB_000e9358;
LAB_000e9434:
                  uStack_90 = CONCAT13(8,uStack_90._1_3_);
                  (*(code *)unaff_s5)(iStack_20,unaff_s8);
                }
                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);
                puStack_38 = puStack_38 + 2;
                pRVar12 = this;
              } while (this != unaff_s2);
            }
          }
          else {
            if (iStack_3c != 4) {
LAB_000e95f4:
              (**(code **)(pcVar34 + -0x7810))
                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,
                         *(int *)(pcVar34 + -0x77f0) + -0x502c);
LAB_000e9610:
              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;
              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);
LAB_000e962c:
              pcVar31 = *(code **)(pcVar34 + -0x7810);
              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;
              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);
              puVar29 = puStack_80;
              pRVar14 = pRStack_84;
              pRVar12 = pRStack_9c;
              pcVar35 = pcVar31 + 0x3dfbfc;
              uVar7 = (uint)bStack_89;
              pOVar21 = pOVar23;
              pcVar37 = pcStack_98;
              pcStack_100 = pcVar35;
              puStack_d4 = puStack_38;
              pRStack_d0 = unaff_s2;
              pOStack_c8 = pOVar22;
              pRStack_c4 = unaff_s5;
              uStack_c0 = uVar5;
              puStack_bc = unaff_s7;
              p_Stack_b8 = unaff_s8;
              pcStack_b4 = pcVar38;
              if (pRStack_9c == (Relocate *)0x9) {
                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);
                if (pRStack_94 != (Relocate *)0x0) {
                  pRVar26 = (Relocate *)0x0;
                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);
                  pRStack_f0 = (Relocate *)
                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;
                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);
                  do {
                    if (uVar7 == 0) {
LAB_000e99a8:
                      pRVar13 = *(Relocate **)(pcVar37 + 4);
                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);
                      if (pRVar24 < pRStack_88) {
                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);
                        pcVar35 = pcStack_100;
                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;
                        pRVar25 = pRVar14 + (int)pRVar24 * 2;
                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;
                        if (pRVar18 < (Relocate *)0xff00) {
LAB_000e9ad8:
                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;
                          pcVar35 = pcStack_100;
                          if ((Relocate *)
                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                              <= pRVar18) goto LAB_000e9d08;
                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)
                          goto LAB_000e9a0c;
                          bVar1 = pRVar25[1].calculate_only_;
                        }
                        else {
                          if (pRVar18 == (Relocate *)0xffff) {
                            iVar2 = *(int *)&pOVar23->entsize_;
                            pRStack_ec = pRVar13;
                            pRStack_e8 = pRVar24;
                            pRStack_e4 = in_t1;
                            pRStack_e0 = pRVar25;
                            if (iVar2 == 0) {
                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])
                                                (pOVar23,&uStack_f8);
                              *(int *)&pOVar23->entsize_ = iVar2;
                            }
                            uVar5 = (uint)pRStack_ec;
                            pRStack_ec = pRStack_e8;
                            pRVar13 = pRStack_e8;
                            pRStack_e8 = (Relocate *)uVar5;
                            pRVar18 = (Relocate *)
                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);
                            pRVar13 = pRStack_e8;
                            pRVar24 = pRStack_ec;
                            in_t1 = pRStack_e4;
                            pRVar25 = pRStack_e0;
                            goto LAB_000e9ad8;
                          }
LAB_000e99e8:
                          bVar1 = pRVar25[1].calculate_only_;
                        }
                        uVar5 = (uint)pRVar13 & 0xff;
                        pcVar35 = pcStack_100;
                        if ((bVar1 & 0xf) != 3) {
                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;
                          in_t1 = (Relocate *)
                                  ((int)&in_t1->calculated_value_ +
                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);
                          if (pRVar24 < (Relocate *)
                                        (*(int *)&pOVar23->field_0xec -
                                         (int)pOVar23->free_space_fill_ >> 4)) {
                            if (in_t1->calculated_value_ != 0) {
                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);
                              pRVar13 = (Relocate *)0x9;
                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;
                            }
                            in_t1->calculated_value_ = 0xfffffffe;
                            goto LAB_000e9970;
                          }
                          goto LAB_000e9cb4;
                        }
                        if (uVar5 != 4) {
                          pRStack_ec = pRVar18;
                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);
                          pcVar35 = pcStack_100;
                          if (uVar5 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();
                            return (bool)uVar11;
                          }
                          goto switchD_000e9b48_caseD_3;
                        }
                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];
                        if (p_Var33 == p_Var32) {
                          if ((Relocate *)
                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                              <= pRVar18) goto LAB_000e9cec;
                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);
                          pRStack_ec = pRVar12;
                        }
                        else {
                          pRStack_ec = pRVar12;
                          iVar2 = (*p_Var33)(pOVar23,pRVar18);
                        }
                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);
                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;
                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);
                        (*pcVar35)(puVar29,&uStack_f8);
                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;
                        iVar2 = *(int *)(puVar29 + 0xc);
                      }
                      else {
LAB_000e9970:
                        uStack_f8 = uStack_f8 & 0xffffff;
                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);
                        iVar2 = *(int *)(puVar29 + 0xc);
                      }
                      *(int *)(puVar29 + 0xc) = iVar2 + 1;
                    }
                    else {
                      iStack_104 = *(int *)pcVar37;
                      uStack_108 = 0;
                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);
                      if (iVar2 != 0) goto LAB_000e99a8;
LAB_000e9a0c:
                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);
                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);
                    }
LAB_000e9990:
                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);
                    pcVar37 = pcVar37 + 8;
                    pRVar13 = pRStack_94;
                  } while (pRStack_94 != pRVar26);
                }
LAB_000e978c:
                return SUB41(pRVar13,0);
              }
              pRVar26 = unaff_s2;
              puVar30 = unaff_s7;
              p_Var32 = unaff_s8;
              if (pRStack_9c == (Relocate *)&DAT_00000004) {
                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);
                pRVar13 = pRStack_f0;
                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;
                pRVar12 = (Relocate *)0x0;
                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);
                p_Var32 = (_func_int_varargs *)&DAT_00000008;
                puVar30 = &uStack_f8;
LAB_000e96fc:
                if (uVar7 != 0) {
                  iStack_104 = *(int *)pcVar37;
                  uStack_108 = 0;
                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);
                  if (iVar2 != 0) goto LAB_000e9704;
LAB_000e9768:
                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);
                  (*(code *)pRVar26)(puVar29,puVar30);
                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);
                  pcVar37 = pcVar37 + 0xc;
                  pRVar13 = pRStack_94;
                  if (pRStack_94 == pRVar12) goto LAB_000e978c;
                  goto LAB_000e96fc;
                }
LAB_000e9704:
                pcVar35 = pcStack_100;
                pRVar24 = *(Relocate **)(pcVar37 + 4);
                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);
                if (pRStack_88 <= pRVar13) {
                  uStack_f8 = uStack_f8 & 0xffffff;
                  (*(code *)pRVar26)(puVar29,puVar30);
LAB_000e96e0:
                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);
                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;
                  pcVar37 = pcVar37 + 0xc;
                  pRVar13 = pRStack_94;
                  if (pRStack_94 == pRVar12) goto LAB_000e978c;
                  goto LAB_000e96fc;
                }
                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);
                if (pRVar14 != (Relocate *)0x0) {
                  pRVar18 = pRVar14 + (int)pRVar13 * 2;
                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;
                  if (uVar5 < 0xff00) {
LAB_000e9898:
                    if (uVar5 == 0) goto LAB_000e9744;
                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);
                    pcVar35 = pcStack_100;
                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                        <= uVar5) goto LAB_000e9d0c;
                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)
                    goto LAB_000e9768;
                    bVar1 = pRVar18[1].calculate_only_;
                  }
                  else {
                    if (uVar5 == 0xffff) {
                      iVar2 = *(int *)&pOVar23->entsize_;
                      pRStack_e8 = pRVar13;
                      pRStack_ec = pRVar24;
                      pRStack_e4 = pRVar25;
                      pRStack_e0 = pRVar18;
                      if (iVar2 == 0) {
                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);
                        *(int *)&pOVar23->entsize_ = iVar2;
                      }
                      uVar5 = (uint)pRStack_ec;
                      pRStack_ec = pRStack_e8;
                      pRVar13 = pRStack_e8;
                      pRStack_e8 = (Relocate *)uVar5;
                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);
                      pRVar13 = pRStack_ec;
                      pRVar24 = pRStack_e8;
                      pRVar25 = pRStack_e4;
                      pRVar18 = pRStack_e0;
                      goto LAB_000e9898;
                    }
LAB_000e9744:
                    bVar1 = pRVar18[1].calculate_only_;
                  }
                  pcVar35 = pcStack_100;
                  if ((bVar1 & 0xf) == 3) {
                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];
                    if (pRVar13 == pRStack_f0) {
                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                          <= uVar5) goto LAB_000e9cec;
                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);
                      uVar5 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);
                      uVar5 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;
                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);
                    (*(code *)pRVar26)(puVar29,puVar30);
                  }
                  else {
                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)
                    goto LAB_000e9768;
                    pRVar25 = (Relocate *)
                              ((int)&pRVar25->calculated_value_ +
                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);
                    if ((Relocate *)
                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=
                        pRVar13) goto LAB_000e9cb4;
                    if ((pRVar25->calculated_value_ != 0) &&
                       (pRVar25->calculated_value_ != 0xfffffffe)) {
                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);
                      pRVar13 = pRVar12;
LAB_000e981c:
                      (**(code **)(pcStack_100 + -0x7810))
                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);
                      pRVar12 = pRVar13;
                    }
                    pRVar25->calculated_value_ = 0xfffffffe;
                    uStack_f8 = uStack_f8 & 0xffffff;
                    (*(code *)pRVar26)(puVar29,puVar30);
                  }
                  goto LAB_000e96e0;
                }
                (**(code **)(pcStack_100 + -0x7810))
                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,
                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);
LAB_000e9cb4:
                (**(code **)(pcVar35 + -0x7810))
                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,
                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);
              }
              (**(code **)(pcVar35 + -0x7810))
                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,
                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);
LAB_000e9cec:
              (**(code **)(pcVar35 + -0x7810))
                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,
                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);
LAB_000e9d08:
              uVar19 = *(uint *)(pcVar35 + -0x77f0);
LAB_000e9d0c:
              (**(code **)(pcVar35 + -0x7810))
                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);
LAB_000e9d24:
              (**(code **)(pcVar35 + -0x7810))
                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,
                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);
switchD_000e9b48_caseD_3:
              pcVar31 = *(code **)(pcVar35 + -0x7810);
              pcVar38 = emit_relocs_scan;
              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,
                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);
              pRVar24 = pRStack_e8;
              pRVar13 = pRStack_ec;
              pcVar35 = pcVar31 + 0x3df4e4;
              pRStack_134 = pRVar14;
              puStack_140 = puVar29;
              uVar5 = (uint)bStack_f1;
              pOVar22 = pOVar21;
              pcVar34 = pcStack_100;
              pcStack_160 = pcVar35;
              pcStack_13c = pcVar37;
              pRStack_138 = pRVar26;
              pOStack_130 = pOVar23;
              pRStack_12c = pRVar12;
              uStack_128 = uVar7;
              puStack_124 = puVar30;
              p_Stack_120 = p_Var32;
              pcStack_11c = pcVar38;
              if (iStack_104 == 9) {
                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);
                pRVar14 = pRStack_150;
                if (pRStack_fc != (Relocate *)0x0) {
                  pRVar26 = (Relocate *)0x0;
                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);
                  p_Var32 = (_func_int_varargs *)&uStack_158;
                  puVar30 = (uint *)0xff00;
                  do {
                    if (uVar5 == 0) {
LAB_000ea0b8:
                      uVar7 = *(uint *)(pcVar34 + 4);
                      pRVar14 = (Relocate *)
                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);
                      if (pRVar14 < pRStack_f0) {
                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);
                        pcVar35 = pcStack_160;
                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;
                        pRVar25 = pRVar13 + (int)pRVar14 * 2;
                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |
                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);
                        if (uVar7 < 0xff00) {
LAB_000ea208:
                          if (uVar7 == 0) goto LAB_000ea108;
                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);
                          pcVar35 = pcStack_160;
                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_
                                    >> 2) <= uVar7) goto LAB_000ea3a8;
                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)
                          goto LAB_000ea1b0;
                          bVar1 = pRVar25[1].calculate_only_;
                        }
                        else {
                          if (uVar7 == 0xffff) {
                            iVar2 = *(int *)&pOVar21->entsize_;
                            pRStack_14c = pRVar14;
                            pRStack_148 = in_t1;
                            pRStack_144 = pRVar25;
                            if (iVar2 == 0) {
                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])
                                                (pOVar21);
                              *(int *)&pOVar21->entsize_ = iVar2;
                            }
                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);
                            pRVar14 = pRStack_14c;
                            in_t1 = pRStack_148;
                            pRVar25 = pRStack_144;
                            goto LAB_000ea208;
                          }
LAB_000ea108:
                          bVar1 = pRVar25[1].calculate_only_;
                        }
                        pcVar35 = pcStack_160;
                        if ((bVar1 & 0xf) == 3) {
                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]
                          ;
                          if (pRVar14 == pRStack_150) {
                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_
                                      >> 2) <= uVar7) goto LAB_000ea354;
                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);
                            uVar7 = *(uint *)(iVar2 + 0x98);
                          }
                          else {
                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);
                            uVar7 = *(uint *)(iVar2 + 0x98);
                          }
                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;
                          uStack_158 = CONCAT13(2,uStack_158._1_3_);
                          (*(code *)pRVar12)(pRVar24,p_Var32);
                        }
                        else {
                          in_t1 = (Relocate *)
                                  ((int)&in_t1->calculated_value_ +
                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);
                          if ((Relocate *)
                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)
                              <= pRVar14) goto LAB_000ea338;
                          if ((in_t1->calculated_value_ != 0) &&
                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),
                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;
                          in_t1->calculated_value_ = 0xfffffffe;
                          uStack_158 = uStack_158 & 0xffffff;
                          (*(code *)pRVar12)(pRVar24,p_Var32);
                        }
                      }
                      else {
                        uStack_158 = uStack_158 & 0xffffff;
                        (*(code *)pRVar12)(pRVar24,p_Var32);
                      }
                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;
                    }
                    else {
                      uVar7 = *(uint *)pcVar34;
                      uStack_168 = 0;
                      pRStack_164 = (Relocate *)
                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);
                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);
                      if (iVar2 != 0) goto LAB_000ea0b8;
LAB_000ea1b0:
                      uStack_158 = CONCAT13(8,uStack_158._1_3_);
                      (*(code *)pRVar12)(pRVar24,p_Var32);
                    }
                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);
                    pcVar34 = pcVar34 + 8;
                    pRVar14 = pRStack_fc;
                  } while (pRStack_fc != pRVar26);
                }
LAB_000e9f34:
                return SUB41(pRVar14,0);
              }
              if (iStack_104 == 4) {
                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);
                pRVar14 = pRStack_fc;
                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;
                pRVar12 = (Relocate *)0x0;
                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);
                puVar30 = &uStack_158;
LAB_000e9e0c:
                if (uVar5 != 0) {
                  uVar7 = *(uint *)pcVar34;
                  uStack_168 = 0;
                  pRStack_164 = (Relocate *)
                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);
                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);
                  if (iVar2 != 0) goto LAB_000e9e14;
LAB_000e9f08:
                  uStack_158 = CONCAT13(8,uStack_158._1_3_);
                  (*(code *)pRVar26)(pRVar24,puVar30);
                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);
                  pcVar34 = pcVar34 + 0xc;
                  pRVar14 = pRStack_fc;
                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;
                  goto LAB_000e9e0c;
                }
LAB_000e9e14:
                pcVar35 = pcStack_160;
                uVar7 = *(uint *)(pcVar34 + 4);
                pRVar14 = (Relocate *)
                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);
                if (pRStack_f0 <= pRVar14) {
                  uStack_158 = uStack_158 & 0xffffff;
                  (*(code *)pRVar26)(pRVar24,puVar30);
LAB_000e9df0:
                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);
                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;
                  pcVar34 = pcVar34 + 0xc;
                  pRVar14 = pRStack_fc;
                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;
                  goto LAB_000e9e0c;
                }
                in_t1 = (Relocate *)((int)pRVar14 * 0x10);
                if (pRVar13 != (Relocate *)0x0) {
                  pRVar25 = pRVar13 + (int)pRVar14 * 2;
                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |
                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);
                  if (uVar7 < 0xff00) {
LAB_000ea00c:
                    if (uVar7 == 0) goto LAB_000e9e68;
                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);
                    pcVar35 = pcStack_160;
                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                        <= uVar7) goto LAB_000ea3a8;
                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)
                    goto LAB_000e9f08;
                    bVar1 = pRVar25[1].calculate_only_;
                  }
                  else {
                    if (uVar7 == 0xffff) {
                      iVar2 = *(int *)&pOVar21->entsize_;
                      pRStack_150 = pRVar14;
                      pRStack_14c = in_t1;
                      pRStack_148 = pRVar25;
                      if (iVar2 == 0) {
                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);
                        *(int *)&pOVar21->entsize_ = iVar2;
                      }
                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);
                      pRVar14 = pRStack_150;
                      in_t1 = pRStack_14c;
                      pRVar25 = pRStack_148;
                      goto LAB_000ea00c;
                    }
LAB_000e9e68:
                    bVar1 = pRVar25[1].calculate_only_;
                  }
                  pcVar35 = pcStack_160;
                  if ((bVar1 & 0xf) == 3) {
                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];
                    if (p_Var33 == p_Var32) {
                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                          <= uVar7) goto LAB_000ea354;
                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);
                      uVar7 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (*p_Var33)(pOVar21,uVar7);
                      uVar7 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;
                    uStack_158 = CONCAT13(1,uStack_158._1_3_);
                    (*(code *)pRVar26)(pRVar24,puVar30);
                  }
                  else {
                    in_t1 = (Relocate *)
                            ((int)&in_t1->calculated_value_ +
                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);
                    if ((Relocate *)
                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=
                        pRVar14) goto LAB_000ea338;
                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))
                    {
                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);
LAB_000e9f98:
                      (**(code **)(pcStack_160 + -0x7810))
                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);
                    }
                    in_t1->calculated_value_ = 0xfffffffe;
                    uStack_158 = uStack_158 & 0xffffff;
                    (*(code *)pRVar26)(pRVar24,puVar30);
                  }
                  goto LAB_000e9df0;
                }
                (**(code **)(pcStack_160 + -0x7810))
                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,
                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);
LAB_000ea338:
                (**(code **)(pcVar35 + -0x7810))
                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,
                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);
LAB_000ea354:
                (**(code **)(pcVar35 + -0x7810))
                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,
                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);
              }
              (**(code **)(pcVar35 + -0x7810))
                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,
                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);
LAB_000ea38c:
              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;
              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);
LAB_000ea3a8:
              pcVar31 = *(code **)(pcVar35 + -0x7810);
              pcVar38 = scan_relocatable_relocs;
              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);
              pRVar18 = pRStack_148;
              pRVar25 = pRStack_14c;
              pRVar14 = pRStack_164;
              pcVar35 = pcVar31 + 0x3dee80;
              pRStack_194 = pRVar13;
              uStack_1a0 = (uint)pRVar24;
              puVar28 = (uint *)(uint)bStack_151;
              pOVar23 = pOVar22;
              pcVar37 = pcStack_160;
              pcStack_1c8 = pcVar35;
              pcStack_19c = pcVar34;
              pRStack_198 = pRVar26;
              pOStack_190 = pOVar21;
              pRStack_18c = pRVar12;
              uStack_188 = uVar5;
              puStack_184 = puVar30;
              p_Stack_180 = p_Var32;
              pcStack_17c = pcVar38;
              if (pRStack_164 == (Relocate *)0x9) {
                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);
                if (pRStack_15c != (Relocate *)0x0) {
                  pRVar26 = (Relocate *)0x0;
                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);
                  pRStack_1b8 = (Relocate *)
                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;
                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);
                  do {
                    if (puVar28 == (uint *)0x0) {
LAB_000ea73c:
                      uVar5 = *(uint *)(pcVar37 + 4);
                      pRVar12 = (Relocate *)
                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);
                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);
                      if (pRVar13 < pRStack_150) {
                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);
                        pcVar35 = pcStack_1c8;
                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;
                        pRVar24 = pRVar25 + (int)pRVar13 * 2;
                        pRVar8 = (Relocate *)
                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |
                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));
                        if (pRVar8 < (Relocate *)0xff00) {
LAB_000ea888:
                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;
                          pcVar35 = pcStack_1c8;
                          if ((Relocate *)
                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                              <= pRVar8) goto LAB_000eaab8;
                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)
                          goto LAB_000ea7b4;
                          bVar1 = pRVar24[1].calculate_only_;
                        }
                        else {
                          if (pRVar8 == (Relocate *)0xffff) {
                            iVar2 = *(int *)&pOVar22->entsize_;
                            pRStack_1b4 = pRVar12;
                            pRStack_1b0 = pRVar13;
                            pRStack_1ac = in_t1;
                            pRStack_1a8 = pRVar24;
                            if (iVar2 == 0) {
                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])
                                                (pOVar22,&uStack_1c0);
                              *(int *)&pOVar22->entsize_ = iVar2;
                            }
                            uVar5 = (uint)pRStack_1b4;
                            pRStack_1b4 = pRStack_1b0;
                            pRVar12 = pRStack_1b0;
                            pRStack_1b0 = (Relocate *)uVar5;
                            pRVar8 = (Relocate *)
                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);
                            pRVar12 = pRStack_1b0;
                            pRVar13 = pRStack_1b4;
                            in_t1 = pRStack_1ac;
                            pRVar24 = pRStack_1a8;
                            goto LAB_000ea888;
                          }
LAB_000ea790:
                          bVar1 = pRVar24[1].calculate_only_;
                        }
                        uVar5 = (uint)pRVar12 & 0xff;
                        pcVar35 = pcStack_1c8;
                        if ((bVar1 & 0xf) != 3) {
                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;
                          in_t1 = (Relocate *)
                                  ((int)&in_t1->calculated_value_ +
                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);
                          if (pRVar13 < (Relocate *)
                                        (*(int *)&pOVar22->field_0xec -
                                         (int)pOVar22->free_space_fill_ >> 4)) {
                            if (in_t1->calculated_value_ != 0) {
                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);
                              pRVar12 = (Relocate *)0x9;
                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;
                            }
                            in_t1->calculated_value_ = 0xfffffffe;
                            goto LAB_000ea704;
                          }
                          goto LAB_000eaa64;
                        }
                        if (uVar5 != 4) {
                          pRStack_1b4 = pRVar8;
                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);
                          pcVar35 = pcStack_1c8;
                          if (uVar5 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();
                            return (bool)uVar11;
                          }
                          goto switchD_000ea8f8_caseD_3;
                        }
                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];
                        if (p_Var33 == p_Var32) {
                          if ((Relocate *)
                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                              <= pRVar8) goto LAB_000eaa9c;
                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);
                          pRStack_1b4 = pRVar14;
                        }
                        else {
                          pRStack_1b4 = pRVar14;
                          iVar2 = (*p_Var33)(pOVar22,pRVar8);
                        }
                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);
                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;
                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);
                        (*pcVar35)(pRVar18,&uStack_1c0);
                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;
                        iVar2 = *(int *)&pRVar18[1].calculate_only_;
                      }
                      else {
LAB_000ea704:
                        uStack_1c0 = uStack_1c0 & 0xffffff;
                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);
                        iVar2 = *(int *)&pRVar18[1].calculate_only_;
                      }
                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;
                    }
                    else {
                      uVar5 = *(uint *)pcVar37;
                      uStack_1d0 = 0;
                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);
                      if (iVar2 != 0) goto LAB_000ea73c;
LAB_000ea7b4:
                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);
                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);
                    }
LAB_000ea724:
                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);
                    pcVar37 = pcVar37 + 8;
                    pRVar12 = pRStack_15c;
                  } while (pRStack_15c != pRVar26);
                }
LAB_000ea518:
                return SUB41(pRVar12,0);
              }
              if (pRStack_164 == (Relocate *)&DAT_00000004) {
                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);
                pRVar12 = pRStack_1b8;
                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;
                pRVar14 = (Relocate *)0x0;
                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);
                p_Var32 = (_func_int_varargs *)&DAT_00000008;
                puVar30 = &uStack_1c0;
LAB_000ea478:
                if (puVar28 != (uint *)0x0) {
                  uVar5 = *(uint *)pcVar37;
                  uStack_1d0 = 0;
                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;
                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);
                  if (iVar2 != 0) goto LAB_000ea480;
LAB_000ea4f4:
                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);
                  (*(code *)pRVar26)(pRVar18,puVar30);
                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);
                  pcVar37 = pcVar37 + 0xc;
                  pRVar12 = pRStack_15c;
                  if (pRStack_15c == pRVar14) goto LAB_000ea518;
                  goto LAB_000ea478;
                }
LAB_000ea480:
                pcVar35 = pcStack_1c8;
                uVar5 = *(uint *)(pcVar37 + 4);
                pRVar12 = (Relocate *)
                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);
                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);
                if (pRStack_150 <= pRVar13) {
                  uStack_1c0 = uStack_1c0 & 0xffffff;
                  (*(code *)pRVar26)(pRVar18,puVar30);
LAB_000ea45c:
                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);
                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;
                  pcVar37 = pcVar37 + 0xc;
                  pRVar12 = pRStack_15c;
                  if (pRStack_15c == pRVar14) goto LAB_000ea518;
                  goto LAB_000ea478;
                }
                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);
                if (pRVar25 != (Relocate *)0x0) {
                  pRVar8 = pRVar25 + (int)pRVar13 * 2;
                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |
                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);
                  if (uVar5 < 0xff00) {
LAB_000ea62c:
                    if (uVar5 == 0) goto LAB_000ea4d4;
                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);
                    pcVar35 = pcStack_1c8;
                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                        <= uVar5) goto LAB_000eaabc;
                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)
                    goto LAB_000ea4f4;
                    bVar1 = pRVar8[1].calculate_only_;
                  }
                  else {
                    if (uVar5 == 0xffff) {
                      iVar2 = *(int *)&pOVar22->entsize_;
                      pRStack_1b4 = pRVar12;
                      pRStack_1b0 = pRVar13;
                      pRStack_1ac = pRVar24;
                      pRStack_1a8 = pRVar8;
                      if (iVar2 == 0) {
                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);
                        *(int *)&pOVar22->entsize_ = iVar2;
                      }
                      uVar5 = (uint)pRStack_1b4;
                      pRStack_1b4 = pRStack_1b0;
                      pRVar12 = pRStack_1b0;
                      pRStack_1b0 = (Relocate *)uVar5;
                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);
                      pRVar12 = pRStack_1b0;
                      pRVar13 = pRStack_1b4;
                      pRVar24 = pRStack_1ac;
                      pRVar8 = pRStack_1a8;
                      goto LAB_000ea62c;
                    }
LAB_000ea4d4:
                    bVar1 = pRVar8[1].calculate_only_;
                  }
                  pcVar35 = pcStack_1c8;
                  if ((bVar1 & 0xf) == 3) {
                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];
                    if (pRVar12 == pRStack_1b8) {
                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= uVar5) goto LAB_000eaa9c;
                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);
                      uVar5 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);
                      uVar5 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;
                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);
                    (*(code *)pRVar26)(pRVar18,puVar30);
                  }
                  else {
                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)
                    goto LAB_000ea4f4;
                    pRVar24 = (Relocate *)
                              ((int)&pRVar24->calculated_value_ +
                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);
                    if ((Relocate *)
                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=
                        pRVar13) goto LAB_000eaa64;
                    if ((pRVar24->calculated_value_ != 0) &&
                       (pRVar24->calculated_value_ != 0xfffffffe)) {
                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);
                      pRVar12 = pRVar14;
LAB_000ea5b0:
                      (**(code **)(pcStack_1c8 + -0x7810))
                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);
                      pRVar14 = pRVar12;
                    }
                    pRVar24->calculated_value_ = 0xfffffffe;
                    uStack_1c0 = uStack_1c0 & 0xffffff;
                    (*(code *)pRVar26)(pRVar18,puVar30);
                  }
                  goto LAB_000ea45c;
                }
                (**(code **)(pcStack_1c8 + -0x7810))
                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,
                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);
LAB_000eaa64:
                (**(code **)(pcVar35 + -0x7810))
                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,
                           *(int *)(pcVar35 + -0x77f0) + -0x489c);
              }
              (**(code **)(pcVar35 + -0x7810))
                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,
                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);
LAB_000eaa9c:
              (**(code **)(pcVar35 + -0x7810))
                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,
                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);
LAB_000eaab8:
              iVar2 = *(int *)(pcVar35 + -0x77f0);
LAB_000eaabc:
              (**(code **)(pcVar35 + -0x7810))
                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);
LAB_000eaad4:
              (**(code **)(pcVar35 + -0x7810))
                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,
                         *(int *)(pcVar35 + -0x77f0) + -0x4908);
switchD_000ea8f8_caseD_3:
              pcVar31 = *(code **)(pcVar35 + -0x7810);
              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;
              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,
                         *(int *)(pcVar35 + -0x77f0) + -0x4920);
              pRVar13 = pRStack_1b0;
              pRVar12 = pRStack_1b4;
              pcVar35 = pcVar31 + 0x3de734;
              pRStack_1fc = pRVar25;
              pRStack_208 = pRVar18;
              uVar5 = (uint)bStack_1b9;
              pOVar21 = pOVar23;
              pcVar34 = pcStack_1c8;
              pcStack_228 = pcVar35;
              pcStack_204 = pcVar37;
              pRStack_200 = pRVar26;
              pOStack_1f8 = pOVar22;
              pRStack_1f4 = pRVar14;
              puStack_1f0 = puVar28;
              puStack_1ec = puVar30;
              p_Stack_1e8 = p_Var32;
              pcStack_1e4 = pcVar38;
              if (iStack_1cc == 9) {
                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);
                pRVar24 = pRStack_218;
                if (pRStack_1c4 != (Relocate *)0x0) {
                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);
                  pRVar26 = (Relocate *)0x0;
                  puVar28 = &uStack_220;
                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;
                  do {
                    if (uVar5 == 0) {
LAB_000eae6c:
                      in_t1 = *(Relocate **)(pcVar34 + 8);
                      if (in_t1 < pRStack_1b8) {
                        pcVar35 = pcStack_228;
                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;
                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);
                        pRVar25 = pRVar12 + (int)in_t1 * 3;
                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;
                        if (uVar7 < 0xff00) {
LAB_000eafac:
                          if (uVar7 == 0) goto LAB_000eaeb0;
                          iVar2 = *(int *)(pcStack_228 + -0x77f0);
                          pcVar35 = pcStack_228;
                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_
                                    >> 2) <= uVar7) goto LAB_000eb154;
                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)
                          goto LAB_000eaf54;
                          bVar1 = pRVar25->calculate_only_;
                        }
                        else {
                          if (uVar7 == 0xffff) {
                            iVar2 = *(int *)&pOVar23->entsize_;
                            pRStack_20c = pRVar24;
                            pRStack_214 = in_t1;
                            pRStack_210 = pRVar25;
                            if (iVar2 == 0) {
                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])
                                                (pOVar23);
                              *(int *)&pOVar23->entsize_ = iVar2;
                            }
                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);
                            pRVar24 = pRStack_20c;
                            in_t1 = pRStack_214;
                            pRVar25 = pRStack_210;
                            goto LAB_000eafac;
                          }
LAB_000eaeb0:
                          bVar1 = pRVar25->calculate_only_;
                        }
                        pcVar35 = pcStack_228;
                        if ((bVar1 & 0xf) == 3) {
                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]
                          ;
                          if (pRVar24 == pRStack_218) {
                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_
                                      >> 2) <= uVar7) goto LAB_000eb100;
                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);
                            uVar7 = *(uint *)(iVar2 + 0x98);
                          }
                          else {
                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);
                            uVar7 = *(uint *)(iVar2 + 0x98);
                          }
                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;
                          uStack_220 = CONCAT13(2,uStack_220._1_3_);
                          (*(code *)pRVar14)(pRVar13,puVar28);
                        }
                        else {
                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +
                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);
                          if ((Relocate *)
                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)
                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;
                          iVar2 = *piVar9;
                          if ((iVar2 != 0) &&
                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))
                          goto LAB_000ead48;
                          *piVar9 = -2;
                          uStack_220 = uStack_220 & 0xffffff;
                          (*(code *)pRVar14)(pRVar13,puVar28);
                        }
                      }
                      else {
                        uStack_220 = uStack_220 & 0xffffff;
                        (*(code *)pRVar14)(pRVar13,puVar28);
                      }
                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;
                    }
                    else {
                      pRStack_22c = *(Relocate **)(pcVar34 + 4);
                      uStack_230 = *(undefined4 *)pcVar34;
                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);
                      if (iVar2 != 0) goto LAB_000eae6c;
LAB_000eaf54:
                      uStack_220 = CONCAT13(8,uStack_220._1_3_);
                      (*(code *)pRVar14)(pRVar13,puVar28);
                    }
                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);
                    pcVar34 = pcVar34 + 0x10;
                    pRVar24 = pRStack_1c4;
                  } while (pRStack_1c4 != pRVar26);
                }
LAB_000eace0:
                return SUB41(pRVar24,0);
              }
              if (iStack_1cc == 4) {
                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);
                pRVar24 = pRStack_218;
                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;
                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);
                pRVar14 = (Relocate *)0x0;
                p_Var32 = (_func_int_varargs *)&uStack_220;
                puVar28 = (uint *)&DAT_aaaaaaab;
LAB_000eabc8:
                if (uVar5 != 0) {
                  pRStack_22c = *(Relocate **)(pcVar34 + 4);
                  uStack_230 = *(undefined4 *)pcVar34;
                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);
                  if (iVar2 != 0) goto LAB_000eabd0;
LAB_000eacb4:
                  uStack_220 = CONCAT13(8,uStack_220._1_3_);
                  (*(code *)pRVar26)(pRVar13,p_Var32);
                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);
                  pcVar34 = pcVar34 + 0x18;
                  pRVar24 = pRStack_1c4;
                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;
                  goto LAB_000eabc8;
                }
LAB_000eabd0:
                pcVar35 = pcStack_228;
                pRVar24 = *(Relocate **)(pcVar34 + 8);
                if (pRStack_1b8 <= pRVar24) {
                  uStack_220 = uStack_220 & 0xffffff;
                  (*(code *)pRVar26)(pRVar13,p_Var32);
LAB_000eabac:
                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);
                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;
                  pcVar34 = pcVar34 + 0x18;
                  pRVar24 = pRStack_1c4;
                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;
                  goto LAB_000eabc8;
                }
                in_t1 = (Relocate *)((int)pRVar24 * 2);
                if (pRVar12 != (Relocate *)0x0) {
                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);
                  pRVar25 = pRVar12 + (int)pRVar24 * 3;
                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;
                  if (uVar7 < 0xff00) {
LAB_000eadbc:
                    if (uVar7 == 0) goto LAB_000eac14;
                    iVar2 = *(int *)(pcStack_228 + -0x77f0);
                    pcVar35 = pcStack_228;
                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                        <= uVar7) goto LAB_000eb154;
                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)
                    goto LAB_000eacb4;
                    bVar1 = pRVar25->calculate_only_;
                  }
                  else {
                    if (uVar7 == 0xffff) {
                      iVar2 = *(int *)&pOVar23->entsize_;
                      pRStack_214 = pRVar24;
                      pRStack_20c = in_t1;
                      pRStack_210 = pRVar25;
                      if (iVar2 == 0) {
                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);
                        *(int *)&pOVar23->entsize_ = iVar2;
                      }
                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);
                      pRVar24 = pRStack_214;
                      in_t1 = pRStack_20c;
                      pRVar25 = pRStack_210;
                      goto LAB_000eadbc;
                    }
LAB_000eac14:
                    bVar1 = pRVar25->calculate_only_;
                  }
                  pcVar35 = pcStack_228;
                  if ((bVar1 & 0xf) == 3) {
                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];
                    if (pRVar24 == pRStack_218) {
                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                          <= uVar7) goto LAB_000eb100;
                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);
                      uVar7 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);
                      uVar7 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;
                    uStack_220 = CONCAT13(1,uStack_220._1_3_);
                    (*(code *)pRVar26)(pRVar13,p_Var32);
                  }
                  else {
                    in_t1 = (Relocate *)
                            ((int)&in_t1->calculated_value_ +
                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);
                    if ((Relocate *)
                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *
                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;
                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))
                    {
                      iVar20 = *(int *)(pcStack_228 + -0x77f0);
LAB_000ead48:
                      (**(code **)(pcStack_228 + -0x7810))
                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);
                    }
                    in_t1->calculated_value_ = 0xfffffffe;
                    uStack_220 = uStack_220 & 0xffffff;
                    (*(code *)pRVar26)(pRVar13,p_Var32);
                  }
                  goto LAB_000eabac;
                }
                (**(code **)(pcStack_228 + -0x7810))
                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,
                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);
LAB_000eb0e4:
                (**(code **)(pcVar35 + -0x7810))
                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,
                           *(int *)(pcVar35 + -0x77f0) + -0x4128);
LAB_000eb100:
                (**(code **)(pcVar35 + -0x7810))
                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,
                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);
              }
              (**(code **)(pcVar35 + -0x7810))
                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,
                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);
LAB_000eb138:
              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;
              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);
LAB_000eb154:
              pcVar31 = *(code **)(pcVar35 + -0x7810);
              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;
              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);
              pRVar18 = pRStack_210;
              pRVar25 = pRStack_214;
              pRVar24 = pRStack_22c;
              pcVar35 = pcVar31 + 0x3de0d4;
              pRStack_25c = pRVar12;
              uStack_268 = (uint)pRVar13;
              uVar7 = (uint)bStack_219;
              pOVar22 = pOVar21;
              pcVar37 = pcStack_228;
              pcStack_290 = pcVar35;
              pcStack_264 = pcVar34;
              pRStack_260 = pRVar26;
              pOStack_258 = pOVar23;
              pRStack_254 = pRVar14;
              puStack_250 = puVar28;
              uStack_24c = uVar5;
              p_Stack_248 = p_Var32;
              pcStack_244 = pcVar38;
              if (pRStack_22c == (Relocate *)0x9) {
                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);
                if (pRStack_224 != (Relocate *)0x0) {
                  pRVar26 = (Relocate *)0x0;
                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);
                  pRStack_280 = (Relocate *)
                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;
                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);
                  do {
                    if (uVar7 == 0) {
LAB_000eb4e4:
                      pRVar12 = *(Relocate **)(pcVar37 + 8);
                      if (pRVar12 < pRStack_218) {
                        pcVar35 = pcStack_290;
                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;
                        iVar2 = (int)pRVar12 * 0x18;
                        pRVar14 = pRVar25 + (int)pRVar12 * 3;
                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;
                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];
                        if (pRVar13 < (Relocate *)0xff00) {
LAB_000eb628:
                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;
                          pcVar35 = pcStack_290;
                          if ((Relocate *)
                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                              <= pRVar13) goto LAB_000eb85c;
                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)
                          goto LAB_000eb5c8;
                          bVar1 = pRVar14->calculate_only_;
                        }
                        else {
                          if (pRVar13 == (Relocate *)0xffff) {
                            iVar20 = *(int *)&pOVar21->entsize_;
                            iStack_270 = iVar2;
                            pRStack_27c = pRVar12;
                            pRStack_278 = in_t1;
                            pRStack_274 = pRVar14;
                            if (iVar20 == 0) {
                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])
                                                 (pOVar21,&uStack_288);
                              *(int *)&pOVar21->entsize_ = iVar20;
                            }
                            pRVar13 = (Relocate *)
                                      (**(code **)(pcStack_290 + -0x7790))
                                                (iVar20,pOVar21,pRStack_27c);
                            iVar2 = iStack_270;
                            pRVar12 = pRStack_27c;
                            in_t1 = pRStack_278;
                            pRVar14 = pRStack_274;
                            goto LAB_000eb628;
                          }
LAB_000eb52c:
                          bVar1 = pRVar14->calculate_only_;
                        }
                        pcVar35 = pcStack_290;
                        if ((bVar1 & 0xf) != 3) {
                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))
                          goto LAB_000eb5c8;
                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +
                                          iVar2);
                          if (pRVar12 < (Relocate *)
                                        ((*(int *)&pOVar21->field_0xec -
                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {
                            iVar2 = *piVar9;
                            if (iVar2 != 0) {
                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);
                              pRVar12 = (Relocate *)0x9;
                              if (iVar2 != -2) goto LAB_000eb2d8;
                            }
                            *piVar9 = -2;
                            goto LAB_000eb4ac;
                          }
                          goto LAB_000eb808;
                        }
                        if (in_t1 != (Relocate *)&DAT_00000004) {
                          pRStack_27c = pRVar13;
                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);
                          pcVar35 = pcStack_290;
                          if (uVar5 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();
                            return (bool)uVar11;
                          }
                          goto switchD_000eb69c_caseD_3;
                        }
                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];
                        if (p_Var33 == p_Var32) {
                          if ((Relocate *)
                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                              <= pRVar13) goto LAB_000eb840;
                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);
                          pRStack_27c = pRVar24;
                        }
                        else {
                          pRStack_27c = pRVar24;
                          iVar2 = (*p_Var33)(pOVar21,pRVar13);
                        }
                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);
                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;
                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);
                        (*pcVar35)(pRVar18,&uStack_288);
                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;
                        iVar2 = *(int *)&pRVar18[1].calculate_only_;
                      }
                      else {
LAB_000eb4ac:
                        uStack_288 = uStack_288 & 0xffffff;
                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);
                        iVar2 = *(int *)&pRVar18[1].calculate_only_;
                      }
                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;
                    }
                    else {
                      iStack_294 = *(int *)(pcVar37 + 4);
                      uStack_298 = *(undefined4 *)pcVar37;
                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);
                      if (iVar2 != 0) goto LAB_000eb4e4;
LAB_000eb5c8:
                      uStack_288 = CONCAT13(8,uStack_288._1_3_);
                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);
                    }
LAB_000eb4cc:
                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);
                    pcVar37 = pcVar37 + 0x10;
                    pRVar12 = pRStack_224;
                  } while (pRStack_224 != pRVar26);
                }
LAB_000eb454:
                return SUB41(pRVar12,0);
              }
              if (pRStack_22c == (Relocate *)&DAT_00000004) {
                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);
                pRVar12 = pRStack_280;
                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;
                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);
                pRVar24 = (Relocate *)0x0;
                p_Var32 = (_func_int_varargs *)&uStack_288;
                puVar28 = (uint *)&DAT_aaaaaaab;
LAB_000eb228:
                if (uVar7 != 0) {
                  iStack_294 = *(int *)(pcVar37 + 4);
                  uStack_298 = *(undefined4 *)pcVar37;
                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);
                  if (iVar2 != 0) goto LAB_000eb230;
LAB_000eb42c:
                  uStack_288 = CONCAT13(8,uStack_288._1_3_);
                  (*(code *)pRVar26)(pRVar18,p_Var32);
                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);
                  pcVar37 = pcVar37 + 0x18;
                  pRVar12 = pRStack_224;
                  if (pRStack_224 == pRVar24) goto LAB_000eb454;
                  goto LAB_000eb228;
                }
LAB_000eb230:
                pcVar35 = pcStack_290;
                in_t1 = *(Relocate **)(pcVar37 + 8);
                if (pRStack_218 <= in_t1) {
                  uStack_288 = uStack_288 & 0xffffff;
                  (*(code *)pRVar26)(pRVar18,p_Var32);
LAB_000eb20c:
                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);
                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;
                  pcVar37 = pcVar37 + 0x18;
                  pRVar12 = pRStack_224;
                  if (pRStack_224 == pRVar24) goto LAB_000eb454;
                  goto LAB_000eb228;
                }
                if (pRVar25 != (Relocate *)0x0) {
                  iVar2 = (int)in_t1 * 0x18;
                  pRVar14 = pRVar25 + (int)in_t1 * 3;
                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;
                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];
                  if (uVar5 < 0xff00) {
LAB_000eb354:
                    if (uVar5 == 0) goto LAB_000eb278;
                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);
                    pcVar35 = pcStack_290;
                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                        <= uVar5) goto LAB_000eb860;
                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)
                    goto LAB_000eb42c;
                    bVar1 = pRVar14->calculate_only_;
                  }
                  else {
                    if (uVar5 == 0xffff) {
                      iVar20 = *(int *)&pOVar21->entsize_;
                      iStack_270 = iVar2;
                      pRStack_27c = in_t1;
                      pRStack_278 = pRVar12;
                      pRStack_274 = pRVar14;
                      if (iVar20 == 0) {
                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);
                        *(int *)&pOVar21->entsize_ = iVar20;
                      }
                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);
                      iVar2 = iStack_270;
                      in_t1 = pRStack_27c;
                      pRVar12 = pRStack_278;
                      pRVar14 = pRStack_274;
                      goto LAB_000eb354;
                    }
LAB_000eb278:
                    bVar1 = pRVar14->calculate_only_;
                  }
                  pcVar35 = pcStack_290;
                  if ((bVar1 & 0xf) == 3) {
                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];
                    if (pRVar12 == pRStack_280) {
                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                          <= uVar5) goto LAB_000eb840;
                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);
                      uVar5 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);
                      uVar5 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;
                    uStack_288 = CONCAT13(1,uStack_288._1_3_);
                    (*(code *)pRVar26)(pRVar18,p_Var32);
                  }
                  else {
                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))
                    goto LAB_000eb42c;
                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);
                    if ((Relocate *)
                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *
                        (int)puVar28) <= in_t1) goto LAB_000eb808;
                    if ((*piVar9 != 0) && (*piVar9 != -2)) {
                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);
                      pRVar12 = pRVar24;
LAB_000eb2d8:
                      (**(code **)(pcStack_290 + -0x7810))
                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);
                      piVar9 = extraout_v1;
                      pRVar24 = pRVar12;
                    }
                    *piVar9 = -2;
                    uStack_288 = uStack_288 & 0xffffff;
                    (*(code *)pRVar26)(pRVar18,p_Var32);
                  }
                  goto LAB_000eb20c;
                }
                (**(code **)(pcStack_290 + -0x7810))
                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,
                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);
LAB_000eb808:
                (**(code **)(pcVar35 + -0x7810))
                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,
                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);
              }
              (**(code **)(pcVar35 + -0x7810))
                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,
                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);
LAB_000eb840:
              (**(code **)(pcVar35 + -0x7810))
                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,
                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);
LAB_000eb85c:
              uVar19 = *(uint *)(pcVar35 + -0x77f0);
LAB_000eb860:
              (**(code **)(pcVar35 + -0x7810))
                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);
LAB_000eb878:
              (**(code **)(pcVar35 + -0x7810))
                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,
                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);
switchD_000eb69c_caseD_3:
              pcVar31 = *(code **)(pcVar35 + -0x7810);
              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;
              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,
                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);
              pRVar14 = pRStack_278;
              pRVar12 = pRStack_27c;
              pcVar35 = pcVar31 + 0x3dd990;
              pRStack_2c4 = pRVar25;
              pRStack_2cc = pRVar18;
              uVar5 = (uint)bStack_281;
              pOVar23 = pOVar22;
              pcVar34 = pcStack_290;
              pcStack_2f0 = pcVar35;
              pcStack_2d0 = pcVar37;
              pRStack_2c8 = pRVar26;
              pOStack_2c0 = pOVar21;
              pRStack_2bc = pRVar24;
              puStack_2b8 = puVar28;
              uStack_2b4 = uVar7;
              p_Stack_2b0 = p_Var32;
              pcStack_2ac = pcVar38;
              if (iStack_294 == 9) {
                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);
                pRVar13 = pRStack_2e0;
                if (pRStack_28c != (Relocate *)0x0) {
                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);
                  pRVar26 = (Relocate *)0x0;
                  puVar28 = &uStack_2e8;
                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;
                  do {
                    if (uVar5 == 0) {
LAB_000ebc34:
                      uVar7 = *(uint *)(pcVar34 + 8);
                      pRVar13 = (Relocate *)
                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);
                      if (pRVar13 < pRStack_280) {
                        pcVar35 = pcStack_2f0;
                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;
                        iVar2 = (int)pRVar13 * 0x18;
                        pRVar25 = pRVar12 + (int)pRVar13 * 3;
                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |
                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);
                        if (uVar7 < 0xff00) {
LAB_000ebd98:
                          if (uVar7 == 0) goto LAB_000ebc8c;
                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);
                          pcVar35 = pcStack_2f0;
                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_
                                    >> 2) <= uVar7) goto LAB_000ebf3c;
                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)
                          goto LAB_000ebd40;
                          bVar1 = pRVar25->calculate_only_;
                        }
                        else {
                          if (uVar7 == 0xffff) {
                            iVar20 = *(int *)&pOVar22->entsize_;
                            pRStack_2dc = pRVar13;
                            iStack_2d4 = iVar2;
                            pRStack_2d8 = pRVar25;
                            if (iVar20 == 0) {
                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])
                                                 (pOVar22);
                              *(int *)&pOVar22->entsize_ = iVar20;
                            }
                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)
                            ;
                            pRVar13 = pRStack_2dc;
                            iVar2 = iStack_2d4;
                            pRVar25 = pRStack_2d8;
                            goto LAB_000ebd98;
                          }
LAB_000ebc8c:
                          bVar1 = pRVar25->calculate_only_;
                        }
                        pcVar35 = pcStack_2f0;
                        if ((bVar1 & 0xf) == 3) {
                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]
                          ;
                          if (pRVar13 == pRStack_2e0) {
                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_
                                      >> 2) <= uVar7) goto LAB_000ebee8;
                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);
                            uVar7 = *(uint *)(iVar2 + 0x98);
                          }
                          else {
                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);
                            uVar7 = *(uint *)(iVar2 + 0x98);
                          }
                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;
                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);
                          (*(code *)pRVar24)(pRVar14,puVar28);
                        }
                        else {
                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +
                                          iVar2);
                          if ((Relocate *)
                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)
                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;
                          iVar2 = *piVar9;
                          if ((iVar2 != 0) &&
                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))
                          goto LAB_000ebb10;
                          *piVar9 = -2;
                          uStack_2e8 = uStack_2e8 & 0xffffff;
                          (*(code *)pRVar24)(pRVar14,puVar28);
                        }
                      }
                      else {
                        uStack_2e8 = uStack_2e8 & 0xffffff;
                        (*(code *)pRVar24)(pRVar14,puVar28);
                      }
                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;
                    }
                    else {
                      uVar19 = *(uint *)pcVar34;
                      uVar7 = *(uint *)(pcVar34 + 4);
                      pRStack_2f4 = (Relocate *)
                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)
                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);
                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;
                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);
                      if (iVar2 != 0) goto LAB_000ebc34;
LAB_000ebd40:
                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);
                      (*(code *)pRVar24)(pRVar14,puVar28);
                    }
                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);
                    pcVar34 = pcVar34 + 0x10;
                    pRVar13 = pRStack_28c;
                  } while (pRStack_28c != pRVar26);
                }
LAB_000ebaa8:
                return SUB41(pRVar13,0);
              }
              if (iStack_294 == 4) {
                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);
                pRVar13 = pRStack_2e0;
                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;
                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);
                pRVar24 = (Relocate *)0x0;
                p_Var32 = (_func_int_varargs *)&uStack_2e8;
                puVar28 = (uint *)&DAT_aaaaaaab;
LAB_000eb96c:
                if (uVar5 != 0) {
                  uVar19 = *(uint *)pcVar34;
                  uVar7 = *(uint *)(pcVar34 + 4);
                  pRStack_2f4 = (Relocate *)
                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +
                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);
                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;
                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);
                  if (iVar2 != 0) goto LAB_000eb974;
LAB_000eba7c:
                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);
                  (*(code *)pRVar26)(pRVar14,p_Var32);
                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);
                  pcVar34 = pcVar34 + 0x18;
                  pRVar13 = pRStack_28c;
                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;
                  goto LAB_000eb96c;
                }
LAB_000eb974:
                pcVar35 = pcStack_2f0;
                uVar7 = *(uint *)(pcVar34 + 8);
                pRVar13 = (Relocate *)
                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +
                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);
                if (pRStack_280 <= pRVar13) {
                  uStack_2e8 = uStack_2e8 & 0xffffff;
                  (*(code *)pRVar26)(pRVar14,p_Var32);
LAB_000eb950:
                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);
                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;
                  pcVar34 = pcVar34 + 0x18;
                  pRVar13 = pRStack_28c;
                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;
                  goto LAB_000eb96c;
                }
                if (pRVar12 != (Relocate *)0x0) {
                  iVar2 = (int)pRVar13 * 0x18;
                  pRVar25 = pRVar12 + (int)pRVar13 * 3;
                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |
                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);
                  if (uVar7 < 0xff00) {
LAB_000ebb84:
                    if (uVar7 == 0) goto LAB_000eb9cc;
                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);
                    pcVar35 = pcStack_2f0;
                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                        <= uVar7) goto LAB_000ebf3c;
                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)
                    goto LAB_000eba7c;
                    bVar1 = pRVar25->calculate_only_;
                  }
                  else {
                    if (uVar7 == 0xffff) {
                      iVar20 = *(int *)&pOVar22->entsize_;
                      pRStack_2dc = pRVar13;
                      iStack_2d4 = iVar2;
                      pRStack_2d8 = pRVar25;
                      if (iVar20 == 0) {
                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);
                        *(int *)&pOVar22->entsize_ = iVar20;
                      }
                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);
                      pRVar13 = pRStack_2dc;
                      iVar2 = iStack_2d4;
                      pRVar25 = pRStack_2d8;
                      goto LAB_000ebb84;
                    }
LAB_000eb9cc:
                    bVar1 = pRVar25->calculate_only_;
                  }
                  pcVar35 = pcStack_2f0;
                  if ((bVar1 & 0xf) == 3) {
                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];
                    if (pRVar13 == pRStack_2e0) {
                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= uVar7) goto LAB_000ebee8;
                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);
                      uVar7 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);
                      uVar7 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;
                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);
                    (*(code *)pRVar26)(pRVar14,p_Var32);
                  }
                  else {
                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)
                    ;
                    if ((Relocate *)
                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *
                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;
                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))
                    {
                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);
LAB_000ebb10:
                      (**(code **)(pcStack_2f0 + -0x7810))
                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);
                    }
                    in_t1->calculated_value_ = 0xfffffffe;
                    uStack_2e8 = uStack_2e8 & 0xffffff;
                    (*(code *)pRVar26)(pRVar14,p_Var32);
                  }
                  goto LAB_000eb950;
                }
                (**(code **)(pcStack_2f0 + -0x7810))
                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,
                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);
LAB_000ebecc:
                (**(code **)(pcVar35 + -0x7810))
                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,
                           *(int *)(pcVar35 + -0x77f0) + -0x3500);
LAB_000ebee8:
                (**(code **)(pcVar35 + -0x7810))
                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,
                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);
              }
              (**(code **)(pcVar35 + -0x7810))
                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,
                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);
LAB_000ebf20:
              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;
              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);
LAB_000ebf3c:
              pcVar37 = *(code **)(pcVar35 + -0x7810);
              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;
              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);
              pRVar18 = pRStack_2d8;
              pRVar25 = pRStack_2dc;
              pRVar13 = pRStack_2f4;
              pRStack_324 = pRVar12;
              pRStack_330 = pRVar14;
              pcVar35 = pcStack_2f0;
              pcStack_32c = pcVar34;
              pRStack_328 = pRVar26;
              pOStack_320 = pOVar22;
              pRStack_31c = pRVar24;
              puStack_318 = puVar28;
              uStack_314 = uVar5;
              p_Stack_310 = p_Var32;
              pcStack_30c = pcVar31;
              if (pRStack_2f4 == (Relocate *)0x9) {
                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);
                if (p_Stack_2ec != (_func_int_varargs *)0x0) {
                  p_Var33 = (_func_int_varargs *)0x0;
                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);
                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;
                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);
                  do {
                    if ((cStack_2e1 == '\0') ||
                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),
                       iVar2 != 0)) {
                      uVar5 = *(uint *)(pcVar35 + 8);
                      pRVar12 = (Relocate *)
                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);
                      if (pRVar12 < pRStack_2e0) {
                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;
                        uVar5 = (uint)(byte)pcVar35[0xf];
                        iVar2 = (int)pRVar12 * 0x18;
                        pRVar14 = pRVar25 + (int)pRVar12 * 3;
                        pRVar26 = (Relocate *)
                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |
                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));
                        if (pRVar26 < (Relocate *)0xff00) {
LAB_000ec454:
                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;
                          if ((Relocate *)
                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                              <= pRVar26) goto LAB_000ec688;
                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)
                          goto LAB_000ec3f4;
                          bVar1 = pRVar14->calculate_only_;
                        }
                        else {
                          if (pRVar26 == (Relocate *)0xffff) {
                            iVar20 = *(int *)&pOVar23->entsize_;
                            pRStack_344 = pRVar12;
                            iStack_338 = iVar2;
                            uStack_340 = uVar5;
                            pRStack_33c = pRVar14;
                            if (iVar20 == 0) {
                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])
                                                 (pOVar23,auStack_350);
                              *(int *)&pOVar23->entsize_ = iVar20;
                            }
                            pRVar26 = (Relocate *)
                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);
                            pRVar12 = pRStack_344;
                            iVar2 = iStack_338;
                            uVar5 = uStack_340;
                            pRVar14 = pRStack_33c;
                            goto LAB_000ec454;
                          }
LAB_000ec348:
                          bVar1 = pRVar14->calculate_only_;
                        }
                        if ((bVar1 & 0xf) != 3) {
                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;
                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +
                                          iVar2);
                          if (pRVar12 < (Relocate *)
                                        ((*(int *)&pOVar23->field_0xec -
                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {
                            if (*piVar9 != 0) {
                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);
                              p_Var27 = (_func_int_varargs *)0x9;
                              if (*piVar9 != -2) goto LAB_000ec0d0;
                            }
                            *piVar9 = -2;
                            goto LAB_000ec2b4;
                          }
                          goto LAB_000ec634;
                        }
                        if (uVar5 != 4) {
                          pRStack_344 = pRVar26;
                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);
                          if (uVar5 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();
                            return (bool)uVar11;
                          }
                          goto switchD_000ec4c8_caseD_3;
                        }
                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];
                        if (p_Var32 == p_Var36) {
                          if ((Relocate *)
                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                              <= pRVar26) goto LAB_000ec66c;
                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);
                          pRStack_344 = pRVar13;
                        }
                        else {
                          pRStack_344 = pRVar13;
                          iVar2 = (*p_Var32)(pOVar23,pRVar26);
                        }
                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);
                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;
                        auStack_350[0] = SUB41(pRStack_344,0);
                        (*pcVar34)(pRVar18,auStack_350);
                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;
                        iVar2 = *(int *)&pRVar18[1].calculate_only_;
                      }
                      else {
LAB_000ec2b4:
                        auStack_350[0] = (_func_int_varargs)0x0;
                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);
                        iVar2 = *(int *)&pRVar18[1].calculate_only_;
                      }
                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;
                    }
                    else {
LAB_000ec3f4:
                      auStack_350[0] = (_func_int_varargs)0x8;
                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);
                    }
LAB_000ec2d4:
                    p_Var33 = p_Var33 + 1;
                    pcVar35 = pcVar35 + 0x10;
                    p_Var32 = p_Stack_2ec;
                  } while (p_Stack_2ec != p_Var33);
                }
LAB_000ec25c:
                return SUB41(p_Var32,0);
              }
              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {
                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);
                p_Var32 = p_Stack_348;
                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;
                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);
                p_Var27 = (_func_int_varargs *)0x0;
                p_Var36 = (_func_int_varargs *)auStack_350;
                puVar29 = &DAT_aaaaaaab;
LAB_000ec010:
                if ((cStack_2e1 != '\0') &&
                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),
                   iVar2 == 0)) {
LAB_000ec234:
                  auStack_350[0] = (_func_int_varargs)0x8;
                  (*p_Var33)(pRVar18,p_Var36);
                  p_Var27 = p_Var27 + 1;
                  pcVar35 = pcVar35 + 0x18;
                  p_Var32 = p_Stack_2ec;
                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;
                  goto LAB_000ec010;
                }
                uVar5 = *(uint *)(pcVar35 + 8);
                pRVar12 = (Relocate *)
                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +
                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);
                if (pRStack_2e0 <= pRVar12) {
                  auStack_350[0] = (_func_int_varargs)0x0;
                  (*p_Var33)(pRVar18,p_Var36);
LAB_000ebff4:
                  p_Var27 = p_Var27 + 1;
                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;
                  pcVar35 = pcVar35 + 0x18;
                  p_Var32 = p_Stack_2ec;
                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;
                  goto LAB_000ec010;
                }
                if (pRVar25 != (Relocate *)0x0) {
                  uVar7 = (uint)(byte)pcVar35[0xf];
                  iVar2 = (int)pRVar12 * 0x18;
                  pRVar14 = pRVar25 + (int)pRVar12 * 3;
                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |
                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);
                  if (uVar5 < 0xff00) {
LAB_000ec14c:
                    if (uVar5 == 0) goto LAB_000ec074;
                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);
                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                        <= uVar5) goto LAB_000ec68c;
                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)
                    goto LAB_000ec234;
                    bVar1 = pRVar14->calculate_only_;
                  }
                  else {
                    if (uVar5 == 0xffff) {
                      iVar20 = *(int *)&pOVar23->entsize_;
                      pRStack_344 = pRVar12;
                      iStack_338 = iVar2;
                      uStack_340 = uVar7;
                      pRStack_33c = pRVar14;
                      if (iVar20 == 0) {
                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);
                        *(int *)&pOVar23->entsize_ = iVar20;
                      }
                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);
                      pRVar12 = pRStack_344;
                      iVar2 = iStack_338;
                      uVar7 = uStack_340;
                      pRVar14 = pRStack_33c;
                      goto LAB_000ec14c;
                    }
LAB_000ec074:
                    bVar1 = pRVar14->calculate_only_;
                  }
                  if ((bVar1 & 0xf) == 3) {
                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];
                    if (p_Var32 == p_Stack_348) {
                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                          <= uVar5) goto LAB_000ec66c;
                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);
                      uVar5 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (*p_Var32)(pOVar23,uVar5);
                      uVar5 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;
                    auStack_350[0] = (_func_int_varargs)0x1;
                    (*p_Var33)(pRVar18,p_Var36);
                  }
                  else {
                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;
                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);
                    if ((Relocate *)
                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *
                        (int)puVar29) <= pRVar12) goto LAB_000ec634;
                    if ((*piVar9 != 0) && (*piVar9 != -2)) {
                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);
LAB_000ec0d0:
                      (**(code **)(pcVar37 + 0x3d5adc))
                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);
                    }
                    *piVar9 = -2;
                    auStack_350[0] = (_func_int_varargs)0x0;
                    (*p_Var33)(pRVar18,p_Var36);
                  }
                  goto LAB_000ebff4;
                }
                (**(code **)(pcVar37 + 0x3d5adc))
                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,
                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);
LAB_000ec634:
                (**(code **)(pcVar37 + 0x3d5adc))
                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,
                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);
              }
              (**(code **)(pcVar37 + 0x3d5adc))
                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,
                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);
LAB_000ec66c:
              (**(code **)(pcVar37 + 0x3d5adc))
                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,
                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);
LAB_000ec688:
              iVar20 = *(int *)(pcVar37 + 0x3d5afc);
LAB_000ec68c:
              (**(code **)(pcVar37 + 0x3d5adc))
                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);
LAB_000ec6a4:
              (**(code **)(pcVar37 + 0x3d5adc))
                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,
                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);
switchD_000ec4c8_caseD_3:
              iVar20 = 0x276;
              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);
              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;
              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);
              if (*(int *)(iVar2 + 0x54) == 0) {
                (**(code **)(pcVar35 + 0x3d5354))
                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,
                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);
              }
              else if (*(int *)(iVar2 + 0x14) != 0) {
                piVar15 = *(int **)(iVar20 + 4);
                piVar16 = *(int **)(iVar20 + 8);
                piVar9 = piVar15 + 1;
                if (piVar15 == piVar16) {
                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);
                  piVar9 = *(int **)(iVar20 + 4);
                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;
                }
                else {
                  *piVar15 = *(int *)(iVar2 + 0x14);
                  *(int **)(iVar20 + 4) = piVar9;
                  if (piVar9 == piVar16) {
LAB_000ec774:
                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);
                    return (bool)uVar11;
                  }
                }
                *piVar9 = *(int *)(iVar2 + 0x54);
                *(int **)(iVar20 + 4) = piVar9 + 1;
                return SUB41(piVar9,0);
              }
              iVar20 = 200;
              pcVar37 = *(code **)(pcVar35 + 0x3d5354);
              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;
              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);
              if (*(int *)(iVar2 + 0x54) == 0) {
                (**(code **)(pcVar37 + 0x3d5260))
                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,
                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);
              }
              else if (*(int *)(iVar2 + 0x14) != 0) {
                piVar15 = *(int **)(iVar20 + 4);
                piVar16 = *(int **)(iVar20 + 8);
                piVar9 = piVar15 + 1;
                if (piVar15 == piVar16) {
                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);
                  piVar9 = *(int **)(iVar20 + 4);
                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;
                }
                else {
                  *piVar15 = *(int *)(iVar2 + 0x14);
                  *(int **)(iVar20 + 4) = piVar9;
                  if (piVar9 == piVar16) {
LAB_000ec868:
                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);
                    return (bool)uVar11;
                  }
                }
                *piVar9 = *(int *)(iVar2 + 0x54);
                *(int **)(iVar20 + 4) = piVar9 + 1;
                return SUB41(piVar9,0);
              }
              iVar20 = 200;
              pcVar35 = *(code **)(pcVar37 + 0x3d5260);
              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;
              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);
              if (*(int *)(iVar2 + 0x50) == 0) {
                (**(code **)(pcVar35 + 0x3d516c))
                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,
                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);
              }
              else if (*(int *)(iVar2 + 0x10) != 0) {
                piVar15 = *(int **)(iVar20 + 4);
                piVar16 = *(int **)(iVar20 + 8);
                piVar9 = piVar15 + 1;
                if (piVar15 == piVar16) {
                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);
                  piVar9 = *(int **)(iVar20 + 4);
                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;
                }
                else {
                  *piVar15 = *(int *)(iVar2 + 0x10);
                  *(int **)(iVar20 + 4) = piVar9;
                  if (piVar9 == piVar16) {
LAB_000ec95c:
                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);
                    return (bool)uVar11;
                  }
                }
                *piVar9 = *(int *)(iVar2 + 0x50);
                *(int **)(iVar20 + 4) = piVar9 + 1;
                return SUB41(piVar9,0);
              }
              iVar20 = 0xb6;
              pcVar37 = *(code **)(pcVar35 + 0x3d516c);
              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;
              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);
              if (*(int *)(iVar2 + 0x50) == 0) {
                (**(code **)(pcVar37 + 0x3d5078))
                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,
                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);
              }
              else if (*(int *)(iVar2 + 0x10) != 0) {
                piVar15 = *(int **)(iVar20 + 4);
                piVar16 = *(int **)(iVar20 + 8);
                piVar9 = piVar15 + 1;
                if (piVar15 == piVar16) {
                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);
                  piVar9 = *(int **)(iVar20 + 4);
                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;
                }
                else {
                  *piVar15 = *(int *)(iVar2 + 0x10);
                  *(int **)(iVar20 + 4) = piVar9;
                  if (piVar9 == piVar16) {
LAB_000eca50:
                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);
                    return (bool)uVar11;
                  }
                }
                *piVar9 = *(int *)(iVar2 + 0x50);
                *(int **)(iVar20 + 4) = piVar9 + 1;
                return SUB41(piVar9,0);
              }
              iVar20 = 0xb6;
              pcVar35 = *(code **)(pcVar37 + 0x3d5078);
              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;
              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);
              if (*(int *)(iVar2 + 0x50) == 0) {
                (**(code **)(pcVar35 + 0x3d4f84))
                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,
                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);
              }
              else if (*(int *)(iVar2 + 0x10) != 0) {
                piVar15 = *(int **)(iVar20 + 4);
                piVar16 = *(int **)(iVar20 + 8);
                piVar9 = piVar15 + 1;
                if (piVar15 == piVar16) {
                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);
                  piVar9 = *(int **)(iVar20 + 4);
                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;
                }
                else {
                  *piVar15 = *(int *)(iVar2 + 0x10);
                  *(int **)(iVar20 + 4) = piVar9;
                  if (piVar9 == piVar16) {
LAB_000ecb44:
                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);
                    return (bool)uVar11;
                  }
                }
                *piVar9 = *(int *)(iVar2 + 0x50);
                *(int **)(iVar20 + 4) = piVar9 + 1;
                return SUB41(piVar9,0);
              }
              iVar20 = 0xb6;
              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);
              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;
              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);
              if (*(int *)(iVar2 + 0x50) == 0) {
                (**(code **)(pcVar37 + 0x3d4e90))
                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,
                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);
              }
              else if (*(int *)(iVar2 + 0x10) != 0) {
                piVar15 = *(int **)(iVar20 + 4);
                piVar16 = *(int **)(iVar20 + 8);
                piVar9 = piVar15 + 1;
                if (piVar15 == piVar16) {
                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);
                  piVar9 = *(int **)(iVar20 + 4);
                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;
                }
                else {
                  *piVar15 = *(int *)(iVar2 + 0x10);
                  *(int **)(iVar20 + 4) = piVar9;
                  if (piVar9 == piVar16) {
LAB_000ecc38:
                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);
                    return (bool)uVar11;
                  }
                }
                *piVar9 = *(int *)(iVar2 + 0x50);
                *(int **)(iVar20 + 4) = piVar9 + 1;
                return SUB41(piVar9,0);
              }
              iVar20 = 0xb6;
              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);
              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;
              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);
              if (*(int *)(iVar2 + 0x54) == 0) {
                (**(code **)(pcVar35 + 0x3d4d9c))
                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,
                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);
              }
              else if (*(int *)(iVar2 + 0x14) != 0) {
                piVar15 = *(int **)(iVar20 + 4);
                piVar16 = *(int **)(iVar20 + 8);
                piVar9 = piVar15 + 1;
                if (piVar15 == piVar16) {
                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);
                  piVar9 = *(int **)(iVar20 + 4);
                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;
                }
                else {
                  *piVar15 = *(int *)(iVar2 + 0x14);
                  *(int **)(iVar20 + 4) = piVar9;
                  if (piVar9 == piVar16) {
LAB_000ecd2c:
                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);
                    return (bool)uVar11;
                  }
                }
                *piVar9 = *(int *)(iVar2 + 0x54);
                *(int **)(iVar20 + 4) = piVar9 + 1;
                return SUB41(piVar9,0);
              }
              iVar20 = 200;
              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);
              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;
              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);
              if (*(int *)(iVar2 + 0x54) == 0) {
                (**(code **)(pcVar37 + 0x3d4ca8))
                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,
                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);
              }
              else if (*(int *)(iVar2 + 0x14) != 0) {
                piVar15 = *(int **)(iVar20 + 4);
                piVar16 = *(int **)(iVar20 + 8);
                piVar9 = piVar15 + 1;
                if (piVar15 == piVar16) {
                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);
                  piVar9 = *(int **)(iVar20 + 4);
                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;
                }
                else {
                  *piVar15 = *(int *)(iVar2 + 0x14);
                  *(int **)(iVar20 + 4) = piVar9;
                  if (piVar9 == piVar16) {
LAB_000ece20:
                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);
                    return (bool)uVar11;
                  }
                }
                *piVar9 = *(int *)(iVar2 + 0x54);
                *(int **)(iVar20 + 4) = piVar9 + 1;
                return SUB41(piVar9,0);
              }
              iVar2 = 200;
              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);
              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);
              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);
              *piVar9 = (int)(piVar9 + 2);
              if (iVar2 != 0) {
                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);
                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);
                return (bool)uVar11;
              }
                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */
                    /* WARNING: Treating indirect jump as call */
              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);
              return (bool)uVar11;
            }
            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);
            pRVar12 = this;
            if (this != (Relocate *)0x0) {
              unaff_s5 = (Relocate *)0x0;
              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);
              unaff_s7 = &uStack_90;
              do {
                while (uVar5 == 0) {
LAB_000e90cc:
                  pcVar34 = pcStack_98;
                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);
                  if (pRVar12 < pRStack_28) {
                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);
                    if (iStack_24 == 0) {
                      (**(code **)(pcStack_98 + -0x7810))
                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,
                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);
LAB_000e95bc:
                      iVar2 = *(int *)(pcVar34 + -0x77f0);
LAB_000e95c0:
                      (**(code **)(pcVar34 + -0x7810))
                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);
LAB_000e95d8:
                      (**(code **)(pcVar34 + -0x7810))
                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,
                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);
                      goto LAB_000e95f4;
                    }
                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);
                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);
                    if (uVar7 < 0xff00) {
LAB_000e92ac:
                      if (uVar7 == 0) goto LAB_000e910c;
                      iVar2 = *(int *)(pcStack_98 + -0x77f0);
                      pcVar34 = pcStack_98;
                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= uVar7) goto LAB_000e962c;
                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)
                      goto LAB_000e91a4;
                      bVar1 = puVar29[0xc];
                    }
                    else {
                      if (uVar7 == 0xffff) {
                        iVar2 = *(int *)&pOVar22->entsize_;
                        pRStack_88 = pRVar12;
                        pRStack_84 = in_t1;
                        puStack_80 = puVar29;
                        if (iVar2 == 0) {
                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);
                          *(int *)&pOVar22->entsize_ = iVar2;
                        }
                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);
                        pRVar12 = pRStack_88;
                        in_t1 = pRStack_84;
                        puVar29 = puStack_80;
                        goto LAB_000e92ac;
                      }
LAB_000e910c:
                      bVar1 = puVar29[0xc];
                    }
                    pcVar34 = pcStack_98;
                    if ((bVar1 & 0xf) != 3) {
                      iVar2 = *(int *)(pcStack_98 + -0x77f0);
                      if (pRVar12 < (Relocate *)
                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_
                                    >> 4)) {
                        piVar9 = (int *)((int)&in_t1->calculated_value_ +
                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);
                        if ((*piVar9 != 0) && (*piVar9 != -2)) {
                          iVar20 = *(int *)(pcStack_98 + -0x77f0);
LAB_000e9238:
                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);
                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);
                        }
                        *piVar9 = -2;
                        uStack_90 = uStack_90 & 0xffffff;
                        (*(code *)unaff_s2)(iStack_20,unaff_s7);
                        goto LAB_000e90a8;
                      }
                      goto LAB_000e95c0;
                    }
                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];
                    if (p_Var32 == unaff_s8) {
                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= uVar7) goto LAB_000e95d8;
                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);
                      uVar7 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (*p_Var32)(pOVar22,uVar7);
                      uVar7 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;
                    uStack_90 = CONCAT13(1,uStack_90._1_3_);
                    (*(code *)unaff_s2)(iStack_20,unaff_s7);
                  }
                  else {
                    uStack_90 = uStack_90 & 0xffffff;
                    (*(code *)unaff_s2)(iStack_20,unaff_s7);
                  }
LAB_000e90a8:
                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);
                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;
                  puStack_38 = puStack_38 + 3;
                  pRVar12 = this;
                  if (this == unaff_s5) goto LAB_000e91d0;
                }
                pRStack_9c = (Relocate *)*puStack_38;
                uStack_a0 = 0;
                iVar2 = (**(code **)(pcStack_98 + -0x76e0))
                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);
                if (iVar2 != 0) goto LAB_000e90cc;
LAB_000e91a4:
                uStack_90 = CONCAT13(8,uStack_90._1_3_);
                (*(code *)unaff_s2)(iStack_20,unaff_s7);
                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);
                puStack_38 = puStack_38 + 3;
                pRVar12 = this;
              } while (this != unaff_s5);
            }
          }
LAB_000e91d0:
          return SUB41(pRVar12,0);
        }
        if (((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||
            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||
           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].
                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.
                      _M_impl._M_end_of_storage)) {
          iVar2 = (int)(pOVar21->super_Output_data).data_size_;
        }
        else {
          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {
            return true;
          }
          iVar2 = (int)(pOVar21->super_Output_data).data_size_;
        }
        if (iVar2 == 0) {
          pGVar6 = &sym->got_offsets_;
        }
        else {
          pGVar6 = &sym->got_offsets_;
          if (*(int *)(iVar2 + 0x8c) != 0) {
            uVar5 = sym[1].got_offsets_.got_offset_;
LAB_000e8f24:
            if (uVar5 == 0xffffffff) {
              return true;
            }
            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);
            return bVar10;
          }
        }
        do {
          if (pGVar6->got_type_ == 0) {
            uVar5 = pGVar6->got_offset_;
            goto LAB_000e8f24;
          }
          pGVar6 = pGVar6->got_next_;
        } while (pGVar6 != (Got_offset_list *)0x0);
      }
      return true;
    }
    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||
        ((this[5].calculated_value_ & 0xe000) != 0)) ||
       (-1 < *(int *)(this[1].calculated_value_ + 0x2c))) {
      iVar2 = (int)(output_section->super_Output_data).data_size_;
    }
    else {
      if ((this[5].calculated_value_ & 0x70000000) != 0x20000000) {
        return true;
      }
      iVar2 = (int)(output_section->super_Output_data).data_size_;
    }
    if (iVar2 == 0) {
      pbVar4 = &this[3].calculate_only_;
    }
    else {
      pbVar4 = &this[3].calculate_only_;
      if (*(int *)(iVar2 + 0x8c) != 0) {
        VVar3 = this[10].calculated_value_;
LAB_000e8d84:
        if (VVar3 == 0xffffffff) {
          return true;
        }
        bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);
        return bVar10;
      }
    }
    do {
      if (*(int *)pbVar4 == 0) {
        VVar3 = *(Valtype *)(pbVar4 + 4);
        goto LAB_000e8d84;
      }
      pbVar4 = *(bool **)(pbVar4 + 8);
    } while (pbVar4 != (bool *)0x0);
  }
  PTR_do_gold_unreachable_004c1a30 = pcVar35;
  return true;
}



code * FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)

{
  code cVar1;
  int iVar2;
  code *pcVar3;
  code *pcVar4;
  int *piVar5;
  uint uVar6;
  int *piVar7;
  undefined *puVar8;
  undefined *puVar9;
  uint uVar10;
  int iVar11;
  int iVar12;
  int *piVar13;
  code *pcVar14;
  code *pcVar15;
  code *pcVar16;
  code *unaff_s2;
  code *unaff_s5;
  uint uVar17;
  uint *puVar18;
  uint *unaff_s7;
  uint *puVar19;
  code *pcVar20;
  code *pcVar21;
  code *pcVar22;
  code *unaff_s8;
  code *pcVar23;
  code *pcVar24;
  code *pcVar25;
  code *pcVar26;
  undefined1 auStack_288 [8];
  code *pcStack_280;
  code *pcStack_27c;
  uint uStack_278;
  code *pcStack_274;
  int iStack_270;
  uint uStack_268;
  code *pcStack_264;
  code *pcStack_260;
  code *pcStack_25c;
  int *piStack_258;
  code *pcStack_254;
  uint *puStack_250;
  uint uStack_24c;
  code *pcStack_248;
  code *pcStack_244;
  undefined4 uStack_230;
  code *pcStack_22c;
  code *pcStack_228;
  code *pcStack_224;
  uint uStack_220;
  char cStack_219;
  code *pcStack_218;
  code *pcStack_214;
  code *pcStack_210;
  int iStack_20c;
  code *pcStack_208;
  code *pcStack_204;
  code *pcStack_200;
  code *pcStack_1fc;
  int *piStack_1f8;
  code *pcStack_1f4;
  uint *puStack_1f0;
  uint *puStack_1ec;
  code *pcStack_1e8;
  code *pcStack_1e4;
  undefined4 uStack_1d0;
  int iStack_1cc;
  code *pcStack_1c8;
  code *pcStack_1c4;
  uint uStack_1c0;
  byte bStack_1b9;
  code *pcStack_1b8;
  code *pcStack_1b4;
  code *pcStack_1b0;
  int iStack_1ac;
  code *pcStack_1a8;
  uint uStack_1a0;
  code *pcStack_19c;
  code *pcStack_198;
  code *pcStack_194;
  int *piStack_190;
  code *pcStack_18c;
  uint uStack_188;
  uint *puStack_184;
  code *pcStack_180;
  code *pcStack_17c;
  undefined4 uStack_168;
  code *pcStack_164;
  code *pcStack_160;
  code *pcStack_15c;
  uint uStack_158;
  byte bStack_151;
  code *pcStack_150;
  code *pcStack_14c;
  code *pcStack_148;
  code *pcStack_144;
  code *pcStack_140;
  code *pcStack_13c;
  code *pcStack_138;
  code *pcStack_134;
  int *piStack_130;
  code *pcStack_12c;
  uint uStack_128;
  uint *puStack_124;
  code *pcStack_120;
  code *pcStack_11c;
  undefined4 uStack_108;
  int iStack_104;
  code *pcStack_100;
  code *pcStack_fc;
  uint uStack_f8;
  byte bStack_f1;
  code *pcStack_f0;
  code *pcStack_ec;
  code *pcStack_e8;
  int iStack_e4;
  code *pcStack_e0;
  undefined4 *puStack_d4;
  code *pcStack_d0;
  int *piStack_c8;
  code *pcStack_c4;
  uint uStack_c0;
  uint *puStack_bc;
  code *pcStack_b8;
  code *pcStack_b4;
  undefined4 uStack_a0;
  code *pcStack_9c;
  code *pcStack_98;
  code *pcStack_94;
  uint uStack_90;
  byte bStack_89;
  code *pcStack_88;
  code *pcStack_84;
  code *pcStack_80;
  code *pcStack_7c;
  undefined *puStack_78;
  int *piStack_74;
  int iStack_3c;
  undefined4 *puStack_38;
  code *pcStack_28;
  int iStack_24;
  int iStack_20;
  
  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {
    return (code *)0x1;
  }
  piVar5 = param_4;
  if (param_2 - 1U < 0xf9) {
    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)
                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);
    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;
  }
  else {
    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);
    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;
  }
  if (iVar2 != 0) {
    PTR_do_gold_unreachable_004c1a30 = pcVar4;
    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {
      iVar2 = 0x5c;
      puVar9 = PTR_s__s_004c1a50 + -0x33c8;
      pcVar3 = FUN_000e8e74;
      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;
      (*pcVar4)();
      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {
        return (code *)0x1;
      }
      piVar7 = piVar5;
      if (iVar2 - 1U < 0xf9) {
        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();
      }
      else {
        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();
      }
      if (iVar2 != 0) {
        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {
          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);
          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8
                    );
          pcVar22 = pcVar20 + 0x3e022c;
          uVar17 = (uint)pcVar3 & 0xff;
          piVar13 = piVar7;
          pcStack_98 = pcVar22;
          puStack_78 = puVar8;
          piStack_74 = piVar5;
          if (iStack_3c == 9) {
            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);
            pcVar3 = pcStack_88;
            if (param_1 != (code *)0x0) {
              unaff_s2 = (code *)0x0;
              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);
              unaff_s8 = (code *)&uStack_90;
              unaff_s7 = (uint *)0xff00;
              do {
                if (uVar17 == 0) {
LAB_000e9358:
                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);
                  if (pcVar3 < pcStack_28) {
                    pcVar20 = (code *)((int)pcVar3 * 0x10);
                    pcVar22 = pcStack_98;
                    if (iStack_24 == 0) goto LAB_000e9610;
                    pcVar15 = pcVar20 + iStack_24;
                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);
                    if (uVar6 < 0xff00) {
LAB_000e948c:
                      if (uVar6 == 0) goto LAB_000e9394;
                      iVar2 = *(int *)(pcStack_98 + -0x77f0);
                      pcVar22 = pcStack_98;
                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;
                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;
                      cVar1 = pcVar15[0xc];
                    }
                    else {
                      if (uVar6 == 0xffff) {
                        iVar2 = piVar7[0xc];
                        pcStack_84 = pcVar3;
                        pcStack_7c = pcVar15;
                        pcStack_80 = pcVar20;
                        if (iVar2 == 0) {
                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);
                          piVar7[0xc] = iVar2;
                        }
                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);
                        pcVar3 = pcStack_84;
                        pcVar15 = pcStack_7c;
                        pcVar20 = pcStack_80;
                        goto LAB_000e948c;
                      }
LAB_000e9394:
                      cVar1 = pcVar15[0xc];
                    }
                    pcVar22 = pcStack_98;
                    if (((byte)cVar1 & 0xf) == 3) {
                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {
                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;
                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);
                        uVar6 = *(uint *)(iVar2 + 0x98);
                      }
                      else {
                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);
                        uVar6 = *(uint *)(iVar2 + 0x98);
                      }
                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                      uStack_90 = CONCAT13(2,uStack_90._1_3_);
                      (*unaff_s5)(iStack_20,unaff_s8);
                    }
                    else {
                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;
                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);
                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))
                      goto LAB_000e9238;
                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;
                      uStack_90 = uStack_90 & 0xffffff;
                      (*unaff_s5)(iStack_20,unaff_s8);
                    }
                  }
                  else {
                    uStack_90 = uStack_90 & 0xffffff;
                    (*unaff_s5)(iStack_20,unaff_s8);
                  }
                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;
                }
                else {
                  pcStack_9c = (code *)*puStack_38;
                  uStack_a0 = 0;
                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);
                  if (iVar2 != 0) goto LAB_000e9358;
LAB_000e9434:
                  uStack_90 = CONCAT13(8,uStack_90._1_3_);
                  (*unaff_s5)(iStack_20,unaff_s8);
                }
                unaff_s2 = unaff_s2 + 1;
                puStack_38 = puStack_38 + 2;
                pcVar3 = param_1;
              } while (param_1 != unaff_s2);
            }
          }
          else {
            if (iStack_3c != 4) {
LAB_000e95f4:
              (**(code **)(pcVar22 + -0x7810))
                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,
                         *(int *)(pcVar22 + -0x77f0) + -0x502c);
LAB_000e9610:
              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;
              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);
LAB_000e962c:
              pcVar21 = *(code **)(pcVar22 + -0x7810);
              pcVar24 = FUN_000e9644;
              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);
              pcVar20 = pcStack_80;
              pcVar22 = pcStack_84;
              pcVar3 = pcStack_9c;
              pcVar4 = pcVar21 + 0x3dfbfc;
              uVar6 = (uint)bStack_89;
              piVar5 = piVar13;
              pcVar15 = pcStack_98;
              pcStack_100 = pcVar4;
              puStack_d4 = puStack_38;
              pcStack_d0 = unaff_s2;
              piStack_c8 = piVar7;
              pcStack_c4 = unaff_s5;
              uStack_c0 = uVar17;
              puStack_bc = unaff_s7;
              pcStack_b8 = unaff_s8;
              pcStack_b4 = pcVar24;
              if (pcStack_9c == (code *)0x9) {
                pcVar4 = *(code **)(pcVar21 + 0x3d8408);
                if (pcStack_94 != (code *)0x0) {
                  pcVar24 = (code *)0x0;
                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);
                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;
                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);
                  do {
                    if (uVar6 == 0) {
LAB_000e99a8:
                      pcVar21 = *(code **)(pcVar15 + 4);
                      pcVar14 = (code *)((uint)pcVar21 >> 8);
                      if (pcVar14 < pcStack_88) {
                        iVar2 = (int)pcVar14 * 0x10;
                        pcVar4 = pcStack_100;
                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;
                        pcVar16 = pcVar22 + iVar2;
                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);
                        if (pcVar25 < (code *)0xff00) {
LAB_000e9ad8:
                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;
                          pcVar4 = pcStack_100;
                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)
                          goto LAB_000e9d08;
                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;
                          cVar1 = pcVar16[0xc];
                        }
                        else {
                          if (pcVar25 == (code *)0xffff) {
                            iVar11 = piVar13[0xc];
                            pcStack_ec = pcVar21;
                            pcStack_e8 = pcVar14;
                            iStack_e4 = iVar2;
                            pcStack_e0 = pcVar16;
                            if (iVar11 == 0) {
                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);
                              piVar13[0xc] = iVar11;
                            }
                            uVar17 = (uint)pcStack_ec;
                            pcStack_ec = pcStack_e8;
                            pcVar4 = pcStack_e8;
                            pcStack_e8 = (code *)uVar17;
                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))
                                                        (iVar11,piVar13,pcVar4);
                            pcVar21 = pcStack_e8;
                            pcVar14 = pcStack_ec;
                            iVar2 = iStack_e4;
                            pcVar16 = pcStack_e0;
                            goto LAB_000e9ad8;
                          }
LAB_000e99e8:
                          cVar1 = pcVar16[0xc];
                        }
                        uVar17 = (uint)pcVar21 & 0xff;
                        pcVar4 = pcStack_100;
                        if (((byte)cVar1 & 0xf) != 3) {
                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;
                          piVar7 = (int *)(piVar13[0x3a] + iVar2);
                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {
                            iVar2 = *piVar7;
                            if (iVar2 != 0) {
                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);
                              pcVar4 = (code *)0x9;
                              if (iVar2 != -2) goto LAB_000e981c;
                            }
                            *piVar7 = -2;
                            goto LAB_000e9970;
                          }
                          goto LAB_000e9cb4;
                        }
                        if (uVar17 != 4) {
                          pcStack_ec = pcVar25;
                          uVar17 = (*pcStack_f0)(uVar17,piVar13);
                          pcVar4 = pcStack_100;
                          if (uVar17 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();
                            return pcVar4;
                          }
                          goto switchD_000e9b48_caseD_3;
                        }
                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {
                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)
                          goto LAB_000e9cec;
                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);
                          pcStack_ec = pcVar3;
                        }
                        else {
                          pcStack_ec = pcVar3;
                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);
                        }
                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);
                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;
                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);
                        (*pcVar4)(pcVar20,&uStack_f8);
                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;
                        iVar2 = *(int *)(pcVar20 + 0xc);
                      }
                      else {
LAB_000e9970:
                        uStack_f8 = uStack_f8 & 0xffffff;
                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);
                        iVar2 = *(int *)(pcVar20 + 0xc);
                      }
                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;
                    }
                    else {
                      iStack_104 = *(int *)pcVar15;
                      uStack_108 = 0;
                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);
                      if (iVar2 != 0) goto LAB_000e99a8;
LAB_000e9a0c:
                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);
                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);
                    }
LAB_000e9990:
                    pcVar24 = pcVar24 + 1;
                    pcVar15 = pcVar15 + 8;
                    pcVar4 = pcStack_94;
                  } while (pcStack_94 != pcVar24);
                }
                return pcVar4;
              }
              pcVar24 = unaff_s2;
              puVar19 = unaff_s7;
              pcVar23 = unaff_s8;
              if (pcStack_9c == (code *)&DAT_00000004) {
                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);
                if (pcStack_94 == (code *)0x0) {
                  return pcStack_f0;
                }
                pcVar3 = (code *)0x0;
                pcVar24 = *(code **)(pcVar21 + 0x3d8518);
                pcVar23 = (code *)&DAT_00000008;
                puVar19 = &uStack_f8;
LAB_000e96fc:
                while (uVar6 != 0) {
                  iStack_104 = *(int *)pcVar15;
                  uStack_108 = 0;
                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);
                  if (iVar2 != 0) break;
LAB_000e9768:
                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);
                  (*pcVar24)(pcVar20,puVar19);
                  pcVar3 = pcVar3 + 1;
                  pcVar15 = pcVar15 + 0xc;
                  if (pcStack_94 == pcVar3) {
                    return pcStack_94;
                  }
                }
                pcVar4 = pcStack_100;
                pcVar14 = *(code **)(pcVar15 + 4);
                pcVar21 = (code *)((uint)pcVar14 >> 8);
                if (pcStack_88 <= pcVar21) {
                  uStack_f8 = uStack_f8 & 0xffffff;
                  (*pcVar24)(pcVar20,puVar19);
LAB_000e96e0:
                  pcVar3 = pcVar3 + 1;
                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;
                  pcVar15 = pcVar15 + 0xc;
                  if (pcStack_94 == pcVar3) {
                    return pcStack_94;
                  }
                  goto LAB_000e96fc;
                }
                iVar2 = (int)pcVar21 * 0x10;
                if (pcVar22 != (code *)0x0) {
                  pcVar16 = pcVar22 + iVar2;
                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);
                  if (uVar17 < 0xff00) {
LAB_000e9898:
                    if (uVar17 == 0) goto LAB_000e9744;
                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);
                    pcVar4 = pcStack_100;
                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;
                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;
                    cVar1 = pcVar16[0xc];
                  }
                  else {
                    if (uVar17 == 0xffff) {
                      iVar11 = piVar13[0xc];
                      pcStack_e8 = pcVar21;
                      pcStack_ec = pcVar14;
                      iStack_e4 = iVar2;
                      pcStack_e0 = pcVar16;
                      if (iVar11 == 0) {
                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);
                        piVar13[0xc] = iVar11;
                      }
                      uVar17 = (uint)pcStack_ec;
                      pcStack_ec = pcStack_e8;
                      pcVar4 = pcStack_e8;
                      pcStack_e8 = (code *)uVar17;
                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);
                      pcVar21 = pcStack_ec;
                      pcVar14 = pcStack_e8;
                      iVar2 = iStack_e4;
                      pcVar16 = pcStack_e0;
                      goto LAB_000e9898;
                    }
LAB_000e9744:
                    cVar1 = pcVar16[0xc];
                  }
                  pcVar4 = pcStack_100;
                  if (((byte)cVar1 & 0xf) == 3) {
                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {
                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;
                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);
                      uVar17 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);
                      uVar17 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;
                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);
                    (*pcVar24)(pcVar20,puVar19);
                  }
                  else {
                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;
                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);
                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;
                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {
                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);
                      pcVar4 = pcVar3;
LAB_000e981c:
                      (**(code **)(pcStack_100 + -0x7810))
                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);
                      pcVar3 = pcVar4;
                    }
                    *(int *)pcVar16 = -2;
                    uStack_f8 = uStack_f8 & 0xffffff;
                    (*pcVar24)(pcVar20,puVar19);
                  }
                  goto LAB_000e96e0;
                }
                (**(code **)(pcStack_100 + -0x7810))
                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,
                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);
LAB_000e9cb4:
                (**(code **)(pcVar4 + -0x7810))
                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,
                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);
              }
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,
                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);
LAB_000e9cec:
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,
                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);
LAB_000e9d08:
              uVar10 = *(uint *)(pcVar4 + -0x77f0);
LAB_000e9d0c:
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);
LAB_000e9d24:
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,
                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);
switchD_000e9b48_caseD_3:
              pcVar16 = *(code **)(pcVar4 + -0x7810);
              pcVar25 = FUN_000e9d5c;
              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,
                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);
              pcVar14 = pcStack_e8;
              pcVar21 = pcStack_ec;
              pcVar4 = pcVar16 + 0x3df4e4;
              pcStack_134 = pcVar22;
              pcStack_140 = pcVar20;
              uVar17 = (uint)bStack_f1;
              piVar7 = piVar5;
              pcVar22 = pcStack_100;
              pcStack_160 = pcVar4;
              pcStack_13c = pcVar15;
              pcStack_138 = pcVar24;
              piStack_130 = piVar13;
              pcStack_12c = pcVar3;
              uStack_128 = uVar6;
              puStack_124 = puVar19;
              pcStack_120 = pcVar23;
              pcStack_11c = pcVar25;
              if (iStack_104 == 9) {
                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);
                pcVar4 = pcStack_150;
                if (pcStack_fc != (code *)0x0) {
                  pcVar24 = (code *)0x0;
                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);
                  pcVar23 = (code *)&uStack_158;
                  puVar19 = (uint *)0xff00;
                  do {
                    if (uVar17 == 0) {
LAB_000ea0b8:
                      uVar6 = *(uint *)(pcVar22 + 4);
                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>
                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000
                                        >> 8);
                      if (pcVar20 < pcStack_f0) {
                        pcVar15 = (code *)((int)pcVar20 * 0x10);
                        pcVar4 = pcStack_160;
                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;
                        pcVar16 = pcVar21 + (int)pcVar15;
                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |
                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);
                        if (uVar6 < 0xff00) {
LAB_000ea208:
                          if (uVar6 == 0) goto LAB_000ea108;
                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);
                          pcVar4 = pcStack_160;
                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;
                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;
                          cVar1 = pcVar16[0xc];
                        }
                        else {
                          if (uVar6 == 0xffff) {
                            iVar2 = piVar5[0xc];
                            pcStack_14c = pcVar20;
                            pcStack_148 = pcVar15;
                            pcStack_144 = pcVar16;
                            if (iVar2 == 0) {
                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);
                              piVar5[0xc] = iVar2;
                            }
                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);
                            pcVar20 = pcStack_14c;
                            pcVar15 = pcStack_148;
                            pcVar16 = pcStack_144;
                            goto LAB_000ea208;
                          }
LAB_000ea108:
                          cVar1 = pcVar16[0xc];
                        }
                        pcVar4 = pcStack_160;
                        if (((byte)cVar1 & 0xf) == 3) {
                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {
                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;
                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);
                            uVar6 = *(uint *)(iVar2 + 0x98);
                          }
                          else {
                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);
                            uVar6 = *(uint *)(iVar2 + 0x98);
                          }
                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                          uStack_158 = CONCAT13(2,uStack_158._1_3_);
                          (*pcVar3)(pcVar14,pcVar23);
                        }
                        else {
                          pcVar15 = pcVar15 + piVar5[0x3a];
                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)
                          goto LAB_000ea338;
                          if ((*(int *)pcVar15 != 0) &&
                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))
                          goto LAB_000e9f98;
                          *(int *)pcVar15 = -2;
                          uStack_158 = uStack_158 & 0xffffff;
                          (*pcVar3)(pcVar14,pcVar23);
                        }
                      }
                      else {
                        uStack_158 = uStack_158 & 0xffffff;
                        (*pcVar3)(pcVar14,pcVar23);
                      }
                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;
                    }
                    else {
                      uVar6 = *(uint *)pcVar22;
                      uStack_168 = 0;
                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>
                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *
                                                     0x10000);
                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);
                      if (iVar2 != 0) goto LAB_000ea0b8;
LAB_000ea1b0:
                      uStack_158 = CONCAT13(8,uStack_158._1_3_);
                      (*pcVar3)(pcVar14,pcVar23);
                    }
                    pcVar24 = pcVar24 + 1;
                    pcVar22 = pcVar22 + 8;
                    pcVar4 = pcStack_fc;
                  } while (pcStack_fc != pcVar24);
                }
                return pcVar4;
              }
              if (iStack_104 == 4) {
                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);
                if (pcStack_fc == (code *)0x0) {
                  return (code *)0x0;
                }
                pcVar3 = (code *)0x0;
                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);
                puVar19 = &uStack_158;
LAB_000e9e0c:
                while (uVar17 != 0) {
                  uVar6 = *(uint *)pcVar22;
                  uStack_168 = 0;
                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>
                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000
                                        );
                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);
                  if (iVar2 != 0) break;
LAB_000e9f08:
                  uStack_158 = CONCAT13(8,uStack_158._1_3_);
                  (*pcVar24)(pcVar14,puVar19);
                  pcVar3 = pcVar3 + 1;
                  pcVar22 = pcVar22 + 0xc;
                  if (pcStack_fc == pcVar3) {
                    return pcStack_fc;
                  }
                }
                pcVar4 = pcStack_160;
                uVar6 = *(uint *)(pcVar22 + 4);
                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +
                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);
                if (pcStack_f0 <= pcVar20) {
                  uStack_158 = uStack_158 & 0xffffff;
                  (*pcVar24)(pcVar14,puVar19);
LAB_000e9df0:
                  pcVar3 = pcVar3 + 1;
                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;
                  pcVar22 = pcVar22 + 0xc;
                  if (pcStack_fc == pcVar3) {
                    return pcStack_fc;
                  }
                  goto LAB_000e9e0c;
                }
                pcVar15 = (code *)((int)pcVar20 * 0x10);
                if (pcVar21 != (code *)0x0) {
                  pcVar16 = pcVar21 + (int)pcVar15;
                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |
                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);
                  if (uVar6 < 0xff00) {
LAB_000ea00c:
                    if (uVar6 == 0) goto LAB_000e9e68;
                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);
                    pcVar4 = pcStack_160;
                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;
                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;
                    cVar1 = pcVar16[0xc];
                  }
                  else {
                    if (uVar6 == 0xffff) {
                      iVar2 = piVar5[0xc];
                      pcStack_150 = pcVar20;
                      pcStack_14c = pcVar15;
                      pcStack_148 = pcVar16;
                      if (iVar2 == 0) {
                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);
                        piVar5[0xc] = iVar2;
                      }
                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);
                      pcVar20 = pcStack_150;
                      pcVar15 = pcStack_14c;
                      pcVar16 = pcStack_148;
                      goto LAB_000ea00c;
                    }
LAB_000e9e68:
                    cVar1 = pcVar16[0xc];
                  }
                  pcVar4 = pcStack_160;
                  if (((byte)cVar1 & 0xf) == 3) {
                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {
                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;
                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);
                      uVar6 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);
                      uVar6 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                    uStack_158 = CONCAT13(1,uStack_158._1_3_);
                    (*pcVar24)(pcVar14,puVar19);
                  }
                  else {
                    pcVar15 = pcVar15 + piVar5[0x3a];
                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;
                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {
                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);
LAB_000e9f98:
                      (**(code **)(pcStack_160 + -0x7810))
                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);
                    }
                    *(int *)pcVar15 = -2;
                    uStack_158 = uStack_158 & 0xffffff;
                    (*pcVar24)(pcVar14,puVar19);
                  }
                  goto LAB_000e9df0;
                }
                (**(code **)(pcStack_160 + -0x7810))
                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,
                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);
LAB_000ea338:
                (**(code **)(pcVar4 + -0x7810))
                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,
                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);
LAB_000ea354:
                (**(code **)(pcVar4 + -0x7810))
                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,
                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);
              }
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,
                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);
LAB_000ea38c:
              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;
              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);
LAB_000ea3a8:
              pcVar25 = *(code **)(pcVar4 + -0x7810);
              pcVar26 = FUN_000ea3c0;
              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);
              pcVar16 = pcStack_148;
              pcVar15 = pcStack_14c;
              pcVar20 = pcStack_164;
              pcVar4 = pcVar25 + 0x3dee80;
              pcStack_194 = pcVar21;
              uStack_1a0 = (uint)pcVar14;
              puVar18 = (uint *)(uint)bStack_151;
              piVar13 = piVar7;
              pcVar21 = pcStack_160;
              pcStack_1c8 = pcVar4;
              pcStack_19c = pcVar22;
              pcStack_198 = pcVar24;
              piStack_190 = piVar5;
              pcStack_18c = pcVar3;
              uStack_188 = uVar17;
              puStack_184 = puVar19;
              pcStack_180 = pcVar23;
              pcStack_17c = pcVar26;
              if (pcStack_164 == (code *)0x9) {
                pcVar4 = *(code **)(pcVar25 + 0x3d768c);
                if (pcStack_15c != (code *)0x0) {
                  pcVar24 = (code *)0x0;
                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);
                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;
                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);
                  do {
                    if (puVar18 == (uint *)0x0) {
LAB_000ea73c:
                      uVar17 = *(uint *)(pcVar21 + 4);
                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>
                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *
                                                0x10000);
                      pcVar22 = (code *)((uint)pcVar3 >> 8);
                      if (pcVar22 < pcStack_150) {
                        iVar2 = (int)pcVar22 * 0x10;
                        pcVar4 = pcStack_1c8;
                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;
                        pcVar14 = pcVar15 + iVar2;
                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |
                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));
                        if (pcVar25 < (code *)0xff00) {
LAB_000ea888:
                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;
                          pcVar4 = pcStack_1c8;
                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)
                          goto LAB_000eaab8;
                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;
                          cVar1 = pcVar14[0xc];
                        }
                        else {
                          if (pcVar25 == (code *)0xffff) {
                            iVar11 = piVar7[0xc];
                            pcStack_1b4 = pcVar3;
                            pcStack_1b0 = pcVar22;
                            iStack_1ac = iVar2;
                            pcStack_1a8 = pcVar14;
                            if (iVar11 == 0) {
                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);
                              piVar7[0xc] = iVar11;
                            }
                            uVar17 = (uint)pcStack_1b4;
                            pcStack_1b4 = pcStack_1b0;
                            pcVar4 = pcStack_1b0;
                            pcStack_1b0 = (code *)uVar17;
                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))
                                                        (iVar11,piVar7,pcVar4);
                            pcVar3 = pcStack_1b0;
                            pcVar22 = pcStack_1b4;
                            iVar2 = iStack_1ac;
                            pcVar14 = pcStack_1a8;
                            goto LAB_000ea888;
                          }
LAB_000ea790:
                          cVar1 = pcVar14[0xc];
                        }
                        uVar17 = (uint)pcVar3 & 0xff;
                        pcVar4 = pcStack_1c8;
                        if (((byte)cVar1 & 0xf) != 3) {
                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;
                          piVar5 = (int *)(piVar7[0x3a] + iVar2);
                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {
                            iVar2 = *piVar5;
                            if (iVar2 != 0) {
                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);
                              pcVar4 = (code *)0x9;
                              if (iVar2 != -2) goto LAB_000ea5b0;
                            }
                            *piVar5 = -2;
                            goto LAB_000ea704;
                          }
                          goto LAB_000eaa64;
                        }
                        if (uVar17 != 4) {
                          pcStack_1b4 = pcVar25;
                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);
                          pcVar4 = pcStack_1c8;
                          if (uVar17 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();
                            return pcVar4;
                          }
                          goto switchD_000ea8f8_caseD_3;
                        }
                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {
                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)
                          goto LAB_000eaa9c;
                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);
                          pcStack_1b4 = pcVar20;
                        }
                        else {
                          pcStack_1b4 = pcVar20;
                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);
                        }
                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);
                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;
                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);
                        (*pcVar4)(pcVar16,&uStack_1c0);
                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;
                        iVar2 = *(int *)(pcVar16 + 0xc);
                      }
                      else {
LAB_000ea704:
                        uStack_1c0 = uStack_1c0 & 0xffffff;
                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);
                        iVar2 = *(int *)(pcVar16 + 0xc);
                      }
                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;
                    }
                    else {
                      uVar17 = *(uint *)pcVar21;
                      uStack_1d0 = 0;
                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +
                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;
                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);
                      if (iVar2 != 0) goto LAB_000ea73c;
LAB_000ea7b4:
                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);
                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);
                    }
LAB_000ea724:
                    pcVar24 = pcVar24 + 1;
                    pcVar21 = pcVar21 + 8;
                    pcVar4 = pcStack_15c;
                  } while (pcStack_15c != pcVar24);
                }
                return pcVar4;
              }
              if (pcStack_164 == (code *)&DAT_00000004) {
                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);
                if (pcStack_15c == (code *)0x0) {
                  return pcStack_1b8;
                }
                pcVar20 = (code *)0x0;
                pcVar24 = *(code **)(pcVar25 + 0x3d779c);
                pcVar23 = (code *)&DAT_00000008;
                puVar19 = &uStack_1c0;
LAB_000ea478:
                while (puVar18 != (uint *)0x0) {
                  uVar17 = *(uint *)pcVar21;
                  uStack_1d0 = 0;
                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +
                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;
                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);
                  if (iVar2 != 0) break;
LAB_000ea4f4:
                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);
                  (*pcVar24)(pcVar16,puVar19);
                  pcVar20 = pcVar20 + 1;
                  pcVar21 = pcVar21 + 0xc;
                  if (pcStack_15c == pcVar20) {
                    return pcStack_15c;
                  }
                }
                pcVar4 = pcStack_1c8;
                uVar17 = *(uint *)(pcVar21 + 4);
                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +
                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);
                pcVar22 = (code *)((uint)pcVar3 >> 8);
                if (pcStack_150 <= pcVar22) {
                  uStack_1c0 = uStack_1c0 & 0xffffff;
                  (*pcVar24)(pcVar16,puVar19);
LAB_000ea45c:
                  pcVar20 = pcVar20 + 1;
                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;
                  pcVar21 = pcVar21 + 0xc;
                  if (pcStack_15c == pcVar20) {
                    return pcStack_15c;
                  }
                  goto LAB_000ea478;
                }
                iVar2 = (int)pcVar22 * 0x10;
                if (pcVar15 != (code *)0x0) {
                  pcVar14 = pcVar15 + iVar2;
                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |
                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);
                  if (uVar17 < 0xff00) {
LAB_000ea62c:
                    if (uVar17 == 0) goto LAB_000ea4d4;
                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);
                    pcVar4 = pcStack_1c8;
                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;
                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;
                    cVar1 = pcVar14[0xc];
                  }
                  else {
                    if (uVar17 == 0xffff) {
                      iVar11 = piVar7[0xc];
                      pcStack_1b4 = pcVar3;
                      pcStack_1b0 = pcVar22;
                      iStack_1ac = iVar2;
                      pcStack_1a8 = pcVar14;
                      if (iVar11 == 0) {
                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);
                        piVar7[0xc] = iVar11;
                      }
                      uVar17 = (uint)pcStack_1b4;
                      pcStack_1b4 = pcStack_1b0;
                      pcVar4 = pcStack_1b0;
                      pcStack_1b0 = (code *)uVar17;
                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);
                      pcVar3 = pcStack_1b0;
                      pcVar22 = pcStack_1b4;
                      iVar2 = iStack_1ac;
                      pcVar14 = pcStack_1a8;
                      goto LAB_000ea62c;
                    }
LAB_000ea4d4:
                    cVar1 = pcVar14[0xc];
                  }
                  pcVar4 = pcStack_1c8;
                  if (((byte)cVar1 & 0xf) == 3) {
                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {
                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;
                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);
                      uVar17 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);
                      uVar17 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;
                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);
                    (*pcVar24)(pcVar16,puVar19);
                  }
                  else {
                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;
                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);
                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;
                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {
                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);
                      pcVar4 = pcVar20;
LAB_000ea5b0:
                      (**(code **)(pcStack_1c8 + -0x7810))
                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);
                      pcVar20 = pcVar4;
                    }
                    *(int *)pcVar14 = -2;
                    uStack_1c0 = uStack_1c0 & 0xffffff;
                    (*pcVar24)(pcVar16,puVar19);
                  }
                  goto LAB_000ea45c;
                }
                (**(code **)(pcStack_1c8 + -0x7810))
                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,
                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);
LAB_000eaa64:
                (**(code **)(pcVar4 + -0x7810))
                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,
                           *(int *)(pcVar4 + -0x77f0) + -0x489c);
              }
              (**(code **)(pcVar4 + -0x7810))
                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,
                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);
LAB_000eaa9c:
              (**(code **)(pcVar4 + -0x7810))
                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,
                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);
LAB_000eaab8:
              iVar11 = *(int *)(pcVar4 + -0x77f0);
LAB_000eaabc:
              (**(code **)(pcVar4 + -0x7810))
                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);
LAB_000eaad4:
              (**(code **)(pcVar4 + -0x7810))
                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,
                         *(int *)(pcVar4 + -0x77f0) + -0x4908);
switchD_000ea8f8_caseD_3:
              pcVar14 = *(code **)(pcVar4 + -0x7810);
              pcVar25 = FUN_000eab0c;
              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,
                         *(int *)(pcVar4 + -0x77f0) + -0x4920);
              pcVar22 = pcStack_1b0;
              pcVar3 = pcStack_1b4;
              pcVar4 = pcVar14 + 0x3de734;
              pcStack_1fc = pcVar15;
              pcStack_208 = pcVar16;
              uVar17 = (uint)bStack_1b9;
              piVar5 = piVar13;
              pcVar15 = pcStack_1c8;
              pcStack_228 = pcVar4;
              pcStack_204 = pcVar21;
              pcStack_200 = pcVar24;
              piStack_1f8 = piVar7;
              pcStack_1f4 = pcVar20;
              puStack_1f0 = puVar18;
              puStack_1ec = puVar19;
              pcStack_1e8 = pcVar23;
              pcStack_1e4 = pcVar25;
              if (iStack_1cc == 9) {
                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);
                pcVar4 = pcStack_218;
                if (pcStack_1c4 != (code *)0x0) {
                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);
                  pcVar24 = (code *)0x0;
                  puVar18 = &uStack_220;
                  pcVar23 = (code *)&DAT_aaaaaaab;
                  do {
                    if (uVar17 == 0) {
LAB_000eae6c:
                      pcVar21 = *(code **)(pcVar15 + 8);
                      if (pcVar21 < pcStack_1b8) {
                        pcVar4 = pcStack_228;
                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;
                        iVar2 = (int)pcVar21 * 0x18;
                        pcVar14 = pcVar3 + iVar2;
                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);
                        if (uVar6 < 0xff00) {
LAB_000eafac:
                          if (uVar6 == 0) goto LAB_000eaeb0;
                          iVar11 = *(int *)(pcStack_228 + -0x77f0);
                          pcVar4 = pcStack_228;
                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;
                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;
                          cVar1 = pcVar14[4];
                        }
                        else {
                          if (uVar6 == 0xffff) {
                            iVar11 = piVar13[0xc];
                            iStack_20c = iVar2;
                            pcStack_214 = pcVar21;
                            pcStack_210 = pcVar14;
                            if (iVar11 == 0) {
                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);
                              piVar13[0xc] = iVar11;
                            }
                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)
                            ;
                            iVar2 = iStack_20c;
                            pcVar21 = pcStack_214;
                            pcVar14 = pcStack_210;
                            goto LAB_000eafac;
                          }
LAB_000eaeb0:
                          cVar1 = pcVar14[4];
                        }
                        pcVar4 = pcStack_228;
                        if (((byte)cVar1 & 0xf) == 3) {
                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {
                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)
                            goto LAB_000eb100;
                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);
                            uVar6 = *(uint *)(iVar2 + 0x98);
                          }
                          else {
                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);
                            uVar6 = *(uint *)(iVar2 + 0x98);
                          }
                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                          uStack_220 = CONCAT13(2,uStack_220._1_3_);
                          (*pcVar20)(pcVar22,puVar18);
                        }
                        else {
                          piVar7 = (int *)(piVar13[0x3a] + iVar2);
                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=
                              pcVar21) goto LAB_000eb0e4;
                          iVar2 = *piVar7;
                          if ((iVar2 != 0) &&
                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))
                          goto LAB_000ead48;
                          *piVar7 = -2;
                          uStack_220 = uStack_220 & 0xffffff;
                          (*pcVar20)(pcVar22,puVar18);
                        }
                      }
                      else {
                        uStack_220 = uStack_220 & 0xffffff;
                        (*pcVar20)(pcVar22,puVar18);
                      }
                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;
                    }
                    else {
                      pcStack_22c = *(code **)(pcVar15 + 4);
                      uStack_230 = *(undefined4 *)pcVar15;
                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);
                      if (iVar2 != 0) goto LAB_000eae6c;
LAB_000eaf54:
                      uStack_220 = CONCAT13(8,uStack_220._1_3_);
                      (*pcVar20)(pcVar22,puVar18);
                    }
                    pcVar24 = pcVar24 + 1;
                    pcVar15 = pcVar15 + 0x10;
                    pcVar4 = pcStack_1c4;
                  } while (pcStack_1c4 != pcVar24);
                }
              }
              else {
                if (iStack_1cc != 4) {
LAB_000eb11c:
                  (**(code **)(pcVar4 + -0x7810))
                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,
                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);
LAB_000eb138:
                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;
                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);
LAB_000eb154:
                  pcVar16 = *(code **)(pcVar4 + -0x7810);
                  pcVar25 = FUN_000eb16c;
                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);
                  pcVar14 = pcStack_210;
                  pcVar21 = pcStack_214;
                  pcVar4 = pcStack_22c;
                  pcStack_25c = pcVar3;
                  uStack_268 = (uint)pcVar22;
                  pcStack_264 = pcVar15;
                  pcStack_260 = pcVar24;
                  piStack_258 = piVar13;
                  pcStack_254 = pcVar20;
                  puStack_250 = puVar18;
                  uStack_24c = uVar17;
                  pcStack_248 = pcVar23;
                  pcStack_244 = pcVar25;
                  if (pcStack_22c == (code *)0x9) {
                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);
                    if (pcStack_224 != (code *)0x0) {
                      pcVar20 = (code *)0x0;
                      iVar2 = *(int *)(pcVar16 + 0x3d6110);
                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);
                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;
                      pcVar22 = pcStack_228;
                      do {
                        if ((cStack_219 == '\0') ||
                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)
                           , iVar11 != 0)) {
                          pcVar3 = *(code **)(pcVar22 + 8);
                          if (pcVar3 < pcStack_218) {
                            if (pcVar21 == (code *)0x0) {
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,
                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +
                                                                -0x4170);
                              return pcVar4;
                            }
                            iVar11 = (int)pcVar3 * 0x18;
                            pcVar24 = pcVar21 + iVar11;
                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);
                            uVar17 = (uint)(byte)pcVar22[0xf];
                            if (uVar6 < 0xff00) {
LAB_000eb628:
                              if (uVar6 == 0) goto LAB_000eb52c;
                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {
                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);
                                goto LAB_000eb860;
                              }
                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;
                              cVar1 = pcVar24[4];
                            }
                            else {
                              if (uVar6 == 0xffff) {
                                iVar12 = piVar5[0xc];
                                iStack_270 = iVar11;
                                pcStack_27c = pcVar3;
                                uStack_278 = uVar17;
                                pcStack_274 = pcVar24;
                                if (iVar12 == 0) {
                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);
                                  piVar5[0xc] = iVar12;
                                }
                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)
                                ;
                                iVar11 = iStack_270;
                                pcVar3 = pcStack_27c;
                                uVar17 = uStack_278;
                                pcVar24 = pcStack_274;
                                goto LAB_000eb628;
                              }
LAB_000eb52c:
                              cVar1 = pcVar24[4];
                            }
                            if (((byte)cVar1 & 0xf) != 3) {
                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;
                              piVar7 = (int *)(piVar5[0x3a] + iVar11);
                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555
                                                   )) {
                                iVar11 = *piVar7;
                                if ((iVar11 == 0) ||
                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {
                                  *piVar7 = -2;
                                  goto LAB_000eb4ac;
                                }
                                goto LAB_000eb2d8;
                              }
                              goto LAB_000eb808;
                            }
                            if (uVar17 != 4) {
                              pcStack_27c = (code *)uVar6;
                              uVar17 = (*pcStack_280)(uVar17,piVar5);
                              if (uVar17 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                                pcVar4 = (code *)(*(pcVar16 +
                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)
                                                 )();
                                return pcVar4;
                              }
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,
                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +
                                                                -0x4188);
                              return pcVar4;
                            }
                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {
                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)
                              goto LAB_000eb840;
                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);
                              pcStack_27c = pcVar4;
                            }
                            else {
                              pcStack_27c = pcVar4;
                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);
                            }
                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);
                            *(uint *)(iVar11 + 0x98) =
                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;
                            auStack_288[0] = SUB41(pcStack_27c,0);
                            (*pcVar3)(pcVar14,auStack_288);
                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;
                            iVar11 = *(int *)(pcVar14 + 0xc);
                          }
                          else {
LAB_000eb4ac:
                            auStack_288[0] = 0;
                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);
                            iVar11 = *(int *)(pcVar14 + 0xc);
                          }
                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;
                        }
                        else {
LAB_000eb5c8:
                          auStack_288[0] = 8;
                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);
                        }
LAB_000eb4cc:
                        pcVar20 = pcVar20 + 1;
                        pcVar22 = pcVar22 + 0x10;
                        pcVar3 = pcStack_224;
                      } while (pcStack_224 != pcVar20);
                    }
                  }
                  else {
                    if (pcStack_22c != (code *)&DAT_00000004) {
                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,
                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);
                      return pcVar4;
                    }
                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);
                    pcVar3 = pcStack_280;
                    if (pcStack_224 != (code *)0x0) {
                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);
                      pcVar20 = (code *)0x0;
                      pcVar4 = pcStack_228;
                      do {
                        while ((cStack_219 != '\0' &&
                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))
                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {
LAB_000eb42c:
                          auStack_288[0] = 8;
                          (*pcVar22)(pcVar14,auStack_288);
                          pcVar20 = pcVar20 + 1;
                          pcVar4 = pcVar4 + 0x18;
                          if (pcStack_224 == pcVar20) {
                            return pcStack_224;
                          }
                        }
                        pcVar3 = *(code **)(pcVar4 + 8);
                        if (pcVar3 < pcStack_218) {
                          if (pcVar21 == (code *)0x0) {
                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,
                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);
                            return pcVar4;
                          }
                          iVar11 = (int)pcVar3 * 0x18;
                          pcVar15 = pcVar21 + iVar11;
                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);
                          uVar6 = (uint)(byte)pcVar4[0xf];
                          if (uVar17 < 0xff00) {
LAB_000eb354:
                            if (uVar17 == 0) goto LAB_000eb278;
                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);
                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {
LAB_000eb860:
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,
                                                          0x50b,iVar2 + -0x34dc);
                              return pcVar4;
                            }
                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;
                            cVar1 = pcVar15[4];
                          }
                          else {
                            if (uVar17 == 0xffff) {
                              iVar2 = piVar5[0xc];
                              iStack_270 = iVar11;
                              pcStack_27c = pcVar3;
                              uStack_278 = uVar6;
                              pcStack_274 = pcVar15;
                              if (iVar2 == 0) {
                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);
                                piVar5[0xc] = iVar2;
                              }
                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);
                              iVar11 = iStack_270;
                              pcVar3 = pcStack_27c;
                              uVar6 = uStack_278;
                              pcVar15 = pcStack_274;
                              goto LAB_000eb354;
                            }
LAB_000eb278:
                            cVar1 = pcVar15[4];
                          }
                          if (((byte)cVar1 & 0xf) == 3) {
                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {
                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {
LAB_000eb840:
                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,
                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +
                                                                  -0x33a0);
                                return pcVar4;
                              }
                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);
                              uVar17 = *(uint *)(iVar2 + 0x98);
                            }
                            else {
                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);
                              uVar17 = *(uint *)(iVar2 + 0x98);
                            }
                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;
                            auStack_288[0] = 1;
                            (*pcVar22)(pcVar14,auStack_288);
                          }
                          else {
                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;
                            piVar7 = (int *)(piVar5[0x3a] + iVar11);
                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3
                               ) {
LAB_000eb808:
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,
                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +
                                                                -0x4128);
                              return pcVar4;
                            }
                            iVar2 = *piVar7;
                            if ((iVar2 != 0) && (iVar2 != -2)) {
                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);
LAB_000eb2d8:
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,
                                                          0x71f,iVar12 + -0x3524);
                              return pcVar4;
                            }
                            *piVar7 = -2;
                            auStack_288[0] = 0;
                            (*pcVar22)(pcVar14,auStack_288);
                          }
                        }
                        else {
                          auStack_288[0] = 0;
                          (*pcVar22)(pcVar14,auStack_288);
                        }
                        pcVar20 = pcVar20 + 1;
                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;
                        pcVar4 = pcVar4 + 0x18;
                        pcVar3 = pcStack_224;
                      } while (pcStack_224 != pcVar20);
                    }
                  }
                  return pcVar3;
                }
                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);
                pcVar4 = pcStack_218;
                if (pcStack_1c4 != (code *)0x0) {
                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);
                  pcVar20 = (code *)0x0;
                  pcVar23 = (code *)&uStack_220;
                  puVar18 = (uint *)&DAT_aaaaaaab;
LAB_000eabc8:
                  while (uVar17 != 0) {
                    pcStack_22c = *(code **)(pcVar15 + 4);
                    uStack_230 = *(undefined4 *)pcVar15;
                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);
                    if (iVar2 != 0) break;
LAB_000eacb4:
                    uStack_220 = CONCAT13(8,uStack_220._1_3_);
                    (*pcVar24)(pcVar22,pcVar23);
                    pcVar20 = pcVar20 + 1;
                    pcVar15 = pcVar15 + 0x18;
                    if (pcStack_1c4 == pcVar20) {
                      return pcStack_1c4;
                    }
                  }
                  pcVar4 = pcStack_228;
                  pcVar14 = *(code **)(pcVar15 + 8);
                  if (pcVar14 < pcStack_1b8) {
                    if (pcVar3 == (code *)0x0) {
                      (**(code **)(pcStack_228 + -0x7810))
                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,
                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);
LAB_000eb0e4:
                      (**(code **)(pcVar4 + -0x7810))
                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,
                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);
LAB_000eb100:
                      (**(code **)(pcVar4 + -0x7810))
                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,
                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);
                      goto LAB_000eb11c;
                    }
                    iVar2 = (int)pcVar14 * 0x18;
                    pcVar21 = pcVar3 + iVar2;
                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);
                    if (uVar6 < 0xff00) {
LAB_000eadbc:
                      if (uVar6 == 0) goto LAB_000eac14;
                      iVar11 = *(int *)(pcStack_228 + -0x77f0);
                      pcVar4 = pcStack_228;
                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;
                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;
                      cVar1 = pcVar21[4];
                    }
                    else {
                      if (uVar6 == 0xffff) {
                        iVar11 = piVar13[0xc];
                        pcStack_214 = pcVar14;
                        iStack_20c = iVar2;
                        pcStack_210 = pcVar21;
                        if (iVar11 == 0) {
                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);
                          piVar13[0xc] = iVar11;
                        }
                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);
                        pcVar14 = pcStack_214;
                        iVar2 = iStack_20c;
                        pcVar21 = pcStack_210;
                        goto LAB_000eadbc;
                      }
LAB_000eac14:
                      cVar1 = pcVar21[4];
                    }
                    pcVar4 = pcStack_228;
                    if (((byte)cVar1 & 0xf) == 3) {
                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {
                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;
                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);
                        uVar6 = *(uint *)(iVar2 + 0x98);
                      }
                      else {
                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);
                        uVar6 = *(uint *)(iVar2 + 0x98);
                      }
                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                      uStack_220 = CONCAT13(1,uStack_220._1_3_);
                      (*pcVar24)(pcVar22,pcVar23);
                    }
                    else {
                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);
                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)
                      goto LAB_000eb0e4;
                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {
                        iVar11 = *(int *)(pcStack_228 + -0x77f0);
LAB_000ead48:
                        (**(code **)(pcStack_228 + -0x7810))
                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);
                      }
                      *(int *)pcVar21 = -2;
                      uStack_220 = uStack_220 & 0xffffff;
                      (*pcVar24)(pcVar22,pcVar23);
                    }
                  }
                  else {
                    uStack_220 = uStack_220 & 0xffffff;
                    (*pcVar24)(pcVar22,pcVar23);
                  }
                  pcVar20 = pcVar20 + 1;
                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;
                  pcVar15 = pcVar15 + 0x18;
                  if (pcStack_1c4 == pcVar20) {
                    return pcStack_1c4;
                  }
                  goto LAB_000eabc8;
                }
              }
              return pcVar4;
            }
            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);
            pcVar3 = param_1;
            if (param_1 != (code *)0x0) {
              unaff_s5 = (code *)0x0;
              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);
              unaff_s7 = &uStack_90;
              do {
                while (uVar17 != 0) {
                  pcStack_9c = (code *)*puStack_38;
                  uStack_a0 = 0;
                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);
                  if (iVar2 != 0) break;
LAB_000e91a4:
                  uStack_90 = CONCAT13(8,uStack_90._1_3_);
                  (*unaff_s2)(iStack_20,unaff_s7);
                  unaff_s5 = unaff_s5 + 1;
                  puStack_38 = puStack_38 + 3;
                  if (param_1 == unaff_s5) {
                    return param_1;
                  }
                }
                pcVar22 = pcStack_98;
                pcVar3 = (code *)((uint)puStack_38[1] >> 8);
                if (pcVar3 < pcStack_28) {
                  pcVar20 = (code *)((int)pcVar3 * 0x10);
                  if (iStack_24 == 0) {
                    (**(code **)(pcStack_98 + -0x7810))
                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,
                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);
LAB_000e95bc:
                    iVar2 = *(int *)(pcVar22 + -0x77f0);
LAB_000e95c0:
                    (**(code **)(pcVar22 + -0x7810))
                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);
LAB_000e95d8:
                    (**(code **)(pcVar22 + -0x7810))
                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,
                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);
                    goto LAB_000e95f4;
                  }
                  pcVar15 = pcVar20 + iStack_24;
                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);
                  if (uVar6 < 0xff00) {
LAB_000e92ac:
                    if (uVar6 == 0) goto LAB_000e910c;
                    iVar2 = *(int *)(pcStack_98 + -0x77f0);
                    pcVar22 = pcStack_98;
                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;
                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;
                    cVar1 = pcVar15[0xc];
                  }
                  else {
                    if (uVar6 == 0xffff) {
                      iVar2 = piVar7[0xc];
                      pcStack_88 = pcVar3;
                      pcStack_84 = pcVar20;
                      pcStack_80 = pcVar15;
                      if (iVar2 == 0) {
                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);
                        piVar7[0xc] = iVar2;
                      }
                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);
                      pcVar3 = pcStack_88;
                      pcVar20 = pcStack_84;
                      pcVar15 = pcStack_80;
                      goto LAB_000e92ac;
                    }
LAB_000e910c:
                    cVar1 = pcVar15[0xc];
                  }
                  pcVar22 = pcStack_98;
                  if (((byte)cVar1 & 0xf) != 3) {
                    iVar2 = *(int *)(pcStack_98 + -0x77f0);
                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {
                      pcVar20 = pcVar20 + piVar7[0x3a];
                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {
                        iVar11 = *(int *)(pcStack_98 + -0x77f0);
LAB_000e9238:
                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);
                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);
                      }
                      *(int *)pcVar20 = -2;
                      uStack_90 = uStack_90 & 0xffffff;
                      (*unaff_s2)(iStack_20,unaff_s7);
                      goto LAB_000e90a8;
                    }
                    goto LAB_000e95c0;
                  }
                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {
                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;
                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);
                    uVar6 = *(uint *)(iVar2 + 0x98);
                  }
                  else {
                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);
                    uVar6 = *(uint *)(iVar2 + 0x98);
                  }
                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                  uStack_90 = CONCAT13(1,uStack_90._1_3_);
                  (*unaff_s2)(iStack_20,unaff_s7);
                }
                else {
                  uStack_90 = uStack_90 & 0xffffff;
                  (*unaff_s2)(iStack_20,unaff_s7);
                }
LAB_000e90a8:
                unaff_s5 = unaff_s5 + 1;
                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;
                puStack_38 = puStack_38 + 3;
                pcVar3 = param_1;
              } while (param_1 != unaff_s5);
            }
          }
          return pcVar3;
        }
        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||
            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||
           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {
          iVar2 = piVar5[5];
        }
        else {
          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {
            return (code *)0x1;
          }
          iVar2 = piVar5[5];
        }
        if (iVar2 == 0) {
          piVar5 = (int *)(puVar8 + 0x1c);
        }
        else {
          piVar5 = (int *)(puVar8 + 0x1c);
          if (*(int *)(iVar2 + 0x8c) != 0) {
            iVar2 = *(int *)(puVar8 + 0x50);
LAB_000e8f24:
            if (iVar2 == -1) {
              return (code *)0x1;
            }
            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);
            return pcVar4;
          }
        }
        do {
          if (*piVar5 == 0) {
            iVar2 = piVar5[1];
            goto LAB_000e8f24;
          }
          piVar5 = (int *)piVar5[2];
        } while (piVar5 != (int *)0x0);
      }
      return (code *)0x1;
    }
    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||
        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||
       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {
      iVar2 = param_4[5];
    }
    else {
      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {
        return (code *)0x1;
      }
      iVar2 = param_4[5];
    }
    if (iVar2 == 0) {
      pcVar3 = param_1 + 0x1c;
    }
    else {
      pcVar3 = param_1 + 0x1c;
      if (*(int *)(iVar2 + 0x8c) != 0) {
        iVar2 = *(int *)(param_1 + 0x50);
LAB_000e8d84:
        if (iVar2 == -1) {
          return (code *)0x1;
        }
        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);
        return pcVar4;
      }
    }
    do {
      if (*(int *)pcVar3 == 0) {
        iVar2 = *(int *)(pcVar3 + 4);
        goto LAB_000e8d84;
      }
      pcVar3 = *(code **)(pcVar3 + 8);
    } while (pcVar3 != (code *)0x0);
  }
  PTR_do_gold_unreachable_004c1a30 = pcVar4;
  return (code *)0x1;
}


lui gp,0x3e
addiu gp,gp,0x56c
addu gp,gp,t9
lw v0,0x5c(a2)
andi v0,v0,0x2
beq v0,zero,0x000e8e20
_nop
beq a0,zero,0x000e8e20
_nop
addiu sp,sp,-0x28
addiu a1,a1,-0x1
sw gp,0x10(sp)
sltiu v0,a1,0xf9
sw ra,0x24(sp)
sw s1,0x20(sp)
beq v0,zero,0x000e8db4
_sw s0,0x1c(sp)
lw v0,-0x77f0(gp)
or s1,a3,zero
lw t9,-0x76e8(gp)
or s0,a0,zero
addiu v0,v0,-0x56e8
addu a1,a1,v0
jalr t9
_lb a1,0x0(a1)
beq v0,zero,0x000e8dd0
_lw gp,0x10(sp)
lw v0,-0x788c(gp)
lw v0,0x0(v0)
lw v0,0x8(v0)
beq v0,zero,0x000e8e5c
_lw a2,-0x77f0(gp)
lbu v0,0x52e9(v0)
bne v0,zero,0x000e8de8
_nop
lw v0,0x14(s1)
beq v0,zero,0x000e8e28
_nop
lw v0,0x8c(v0)
beq v0,zero,0x000e8e2c
_addiu v0,s0,0x1c
lw v0,0x50(s0)
addiu v0,v0,0x1
sltu v0,zero,v0
beq v0,zero,0x000e8dd0
_lw t9,-0x77f4(gp)
or a0,s0,zero
lw a1,0x14(s0)
or a2,zero,zero
lw ra,0x24(sp)
lw s1,0x20(sp)
addiu t9,t9,0x5e4
lw s0,0x1c(sp)
addiu sp,sp,0x28
b 0x000d05e4
_sltu a1,zero,a1
lw t9,-0x76e8(gp)
or a1,zero,zero
or s1,a3,zero
jalr t9
_or s0,a0,zero
bne v0,zero,0x000e8d40
_lw gp,0x10(sp)
lw ra,0x24(sp)
li v0,0x1
lw s1,0x20(sp)
lw s0,0x1c(sp)
jr ra
_addiu sp,sp,0x28
lw v0,0x28(s0)
andi v1,v0,0xe000
bne v1,zero,0x000e8d60
_nop
lw v1,0x8(s0)
lw v1,0x2c(v1)
bgez v1,0x000e8d60
_lui a0,0x7000
lui v1,0x2000
and v0,v0,a0
bne v0,v1,0x000e8dd4
_lw ra,0x24(sp)
b 0x000e8d64
_lw v0,0x14(s1)
jr ra
_li v0,0x1
addiu v0,s0,0x1c
lw v1,0x0(v0)
beq v1,zero,0x000e8e4c
_nop
lw v0,0x8(v0)
bne v0,zero,0x000e8e2c
_lw ra,0x24(sp)
b 0x000e8dd8
_li v0,0x1
lw v0,0x4(v0)
addiu v0,v0,0x1
b 0x000e8d84
_sltu v0,zero,v0
li a1,0x5c
lw a0,-0x7fc4(gp)
lw t9,-0x7810(gp)
addiu a2,a2,-0x33c8
jalr t9
_addiu a0,a0,-0x9b8
(translation_unit "code * FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)\n\n{\n  code cVar1;\n  int iVar2;\n  code *pcVar3;\n  code *pcVar4;\n  int *piVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  uint uVar10;\n  int iVar11;\n  int iVar12;\n  int *piVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  code *unaff_s2;\n  code *unaff_s5;\n  uint uVar17;\n  uint *puVar18;\n  uint *unaff_s7;\n  uint *puVar19;\n  code *pcVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *unaff_s8;\n  code *pcVar23;\n  code *pcVar24;\n  code *pcVar25;\n  code *pcVar26;\n  undefined1 auStack_288 [8];\n  code *pcStack_280;\n  code *pcStack_27c;\n  uint uStack_278;\n  code *pcStack_274;\n  int iStack_270;\n  uint uStack_268;\n  code *pcStack_264;\n  code *pcStack_260;\n  code *pcStack_25c;\n  int *piStack_258;\n  code *pcStack_254;\n  uint *puStack_250;\n  uint uStack_24c;\n  code *pcStack_248;\n  code *pcStack_244;\n  undefined4 uStack_230;\n  code *pcStack_22c;\n  code *pcStack_228;\n  code *pcStack_224;\n  uint uStack_220;\n  char cStack_219;\n  code *pcStack_218;\n  code *pcStack_214;\n  code *pcStack_210;\n  int iStack_20c;\n  code *pcStack_208;\n  code *pcStack_204;\n  code *pcStack_200;\n  code *pcStack_1fc;\n  int *piStack_1f8;\n  code *pcStack_1f4;\n  uint *puStack_1f0;\n  uint *puStack_1ec;\n  code *pcStack_1e8;\n  code *pcStack_1e4;\n  undefined4 uStack_1d0;\n  int iStack_1cc;\n  code *pcStack_1c8;\n  code *pcStack_1c4;\n  uint uStack_1c0;\n  byte bStack_1b9;\n  code *pcStack_1b8;\n  code *pcStack_1b4;\n  code *pcStack_1b0;\n  int iStack_1ac;\n  code *pcStack_1a8;\n  uint uStack_1a0;\n  code *pcStack_19c;\n  code *pcStack_198;\n  code *pcStack_194;\n  int *piStack_190;\n  code *pcStack_18c;\n  uint uStack_188;\n  uint *puStack_184;\n  code *pcStack_180;\n  code *pcStack_17c;\n  undefined4 uStack_168;\n  code *pcStack_164;\n  code *pcStack_160;\n  code *pcStack_15c;\n  uint uStack_158;\n  byte bStack_151;\n  code *pcStack_150;\n  code *pcStack_14c;\n  code *pcStack_148;\n  code *pcStack_144;\n  code *pcStack_140;\n  code *pcStack_13c;\n  code *pcStack_138;\n  code *pcStack_134;\n  int *piStack_130;\n  code *pcStack_12c;\n  uint uStack_128;\n  uint *puStack_124;\n  code *pcStack_120;\n  code *pcStack_11c;\n  undefined4 uStack_108;\n  int iStack_104;\n  code *pcStack_100;\n  code *pcStack_fc;\n  uint uStack_f8;\n  byte bStack_f1;\n  code *pcStack_f0;\n  code *pcStack_ec;\n  code *pcStack_e8;\n  int iStack_e4;\n  code *pcStack_e0;\n  undefined4 *puStack_d4;\n  code *pcStack_d0;\n  int *piStack_c8;\n  code *pcStack_c4;\n  uint uStack_c0;\n  uint *puStack_bc;\n  code *pcStack_b8;\n  code *pcStack_b4;\n  undefined4 uStack_a0;\n  code *pcStack_9c;\n  code *pcStack_98;\n  code *pcStack_94;\n  uint uStack_90;\n  byte bStack_89;\n  code *pcStack_88;\n  code *pcStack_84;\n  code *pcStack_80;\n  code *pcStack_7c;\n  undefined *puStack_78;\n  int *piStack_74;\n  int iStack_3c;\n  undefined4 *puStack_38;\n  code *pcStack_28;\n  int iStack_24;\n  int iStack_20;\n  \n  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }\n  piVar5 = param_4;\n  if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }\n  PTR_do_gold_unreachable_004c1a30 = pcVar4;\n  return (code *)0x1;\n}\n\n" (function_definition "code * FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)\n\n{\n  code cVar1;\n  int iVar2;\n  code *pcVar3;\n  code *pcVar4;\n  int *piVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  uint uVar10;\n  int iVar11;\n  int iVar12;\n  int *piVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  code *unaff_s2;\n  code *unaff_s5;\n  uint uVar17;\n  uint *puVar18;\n  uint *unaff_s7;\n  uint *puVar19;\n  code *pcVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *unaff_s8;\n  code *pcVar23;\n  code *pcVar24;\n  code *pcVar25;\n  code *pcVar26;\n  undefined1 auStack_288 [8];\n  code *pcStack_280;\n  code *pcStack_27c;\n  uint uStack_278;\n  code *pcStack_274;\n  int iStack_270;\n  uint uStack_268;\n  code *pcStack_264;\n  code *pcStack_260;\n  code *pcStack_25c;\n  int *piStack_258;\n  code *pcStack_254;\n  uint *puStack_250;\n  uint uStack_24c;\n  code *pcStack_248;\n  code *pcStack_244;\n  undefined4 uStack_230;\n  code *pcStack_22c;\n  code *pcStack_228;\n  code *pcStack_224;\n  uint uStack_220;\n  char cStack_219;\n  code *pcStack_218;\n  code *pcStack_214;\n  code *pcStack_210;\n  int iStack_20c;\n  code *pcStack_208;\n  code *pcStack_204;\n  code *pcStack_200;\n  code *pcStack_1fc;\n  int *piStack_1f8;\n  code *pcStack_1f4;\n  uint *puStack_1f0;\n  uint *puStack_1ec;\n  code *pcStack_1e8;\n  code *pcStack_1e4;\n  undefined4 uStack_1d0;\n  int iStack_1cc;\n  code *pcStack_1c8;\n  code *pcStack_1c4;\n  uint uStack_1c0;\n  byte bStack_1b9;\n  code *pcStack_1b8;\n  code *pcStack_1b4;\n  code *pcStack_1b0;\n  int iStack_1ac;\n  code *pcStack_1a8;\n  uint uStack_1a0;\n  code *pcStack_19c;\n  code *pcStack_198;\n  code *pcStack_194;\n  int *piStack_190;\n  code *pcStack_18c;\n  uint uStack_188;\n  uint *puStack_184;\n  code *pcStack_180;\n  code *pcStack_17c;\n  undefined4 uStack_168;\n  code *pcStack_164;\n  code *pcStack_160;\n  code *pcStack_15c;\n  uint uStack_158;\n  byte bStack_151;\n  code *pcStack_150;\n  code *pcStack_14c;\n  code *pcStack_148;\n  code *pcStack_144;\n  code *pcStack_140;\n  code *pcStack_13c;\n  code *pcStack_138;\n  code *pcStack_134;\n  int *piStack_130;\n  code *pcStack_12c;\n  uint uStack_128;\n  uint *puStack_124;\n  code *pcStack_120;\n  code *pcStack_11c;\n  undefined4 uStack_108;\n  int iStack_104;\n  code *pcStack_100;\n  code *pcStack_fc;\n  uint uStack_f8;\n  byte bStack_f1;\n  code *pcStack_f0;\n  code *pcStack_ec;\n  code *pcStack_e8;\n  int iStack_e4;\n  code *pcStack_e0;\n  undefined4 *puStack_d4;\n  code *pcStack_d0;\n  int *piStack_c8;\n  code *pcStack_c4;\n  uint uStack_c0;\n  uint *puStack_bc;\n  code *pcStack_b8;\n  code *pcStack_b4;\n  undefined4 uStack_a0;\n  code *pcStack_9c;\n  code *pcStack_98;\n  code *pcStack_94;\n  uint uStack_90;\n  byte bStack_89;\n  code *pcStack_88;\n  code *pcStack_84;\n  code *pcStack_80;\n  code *pcStack_7c;\n  undefined *puStack_78;\n  int *piStack_74;\n  int iStack_3c;\n  undefined4 *puStack_38;\n  code *pcStack_28;\n  int iStack_24;\n  int iStack_20;\n  \n  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }\n  piVar5 = param_4;\n  if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }\n  PTR_do_gold_unreachable_004c1a30 = pcVar4;\n  return (code *)0x1;\n}" type_identifier (pointer_declarator "* FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)" * (function_declarator "FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)" identifier (parameter_list "(code *param_1,int param_2,int param_3,int *param_4)" ( (parameter_declaration "code *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "int param_2" primitive_type identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "int *param_4" primitive_type (pointer_declarator "*param_4" * identifier)) )))) (compound_statement "{\n  code cVar1;\n  int iVar2;\n  code *pcVar3;\n  code *pcVar4;\n  int *piVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  uint uVar10;\n  int iVar11;\n  int iVar12;\n  int *piVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  code *unaff_s2;\n  code *unaff_s5;\n  uint uVar17;\n  uint *puVar18;\n  uint *unaff_s7;\n  uint *puVar19;\n  code *pcVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *unaff_s8;\n  code *pcVar23;\n  code *pcVar24;\n  code *pcVar25;\n  code *pcVar26;\n  undefined1 auStack_288 [8];\n  code *pcStack_280;\n  code *pcStack_27c;\n  uint uStack_278;\n  code *pcStack_274;\n  int iStack_270;\n  uint uStack_268;\n  code *pcStack_264;\n  code *pcStack_260;\n  code *pcStack_25c;\n  int *piStack_258;\n  code *pcStack_254;\n  uint *puStack_250;\n  uint uStack_24c;\n  code *pcStack_248;\n  code *pcStack_244;\n  undefined4 uStack_230;\n  code *pcStack_22c;\n  code *pcStack_228;\n  code *pcStack_224;\n  uint uStack_220;\n  char cStack_219;\n  code *pcStack_218;\n  code *pcStack_214;\n  code *pcStack_210;\n  int iStack_20c;\n  code *pcStack_208;\n  code *pcStack_204;\n  code *pcStack_200;\n  code *pcStack_1fc;\n  int *piStack_1f8;\n  code *pcStack_1f4;\n  uint *puStack_1f0;\n  uint *puStack_1ec;\n  code *pcStack_1e8;\n  code *pcStack_1e4;\n  undefined4 uStack_1d0;\n  int iStack_1cc;\n  code *pcStack_1c8;\n  code *pcStack_1c4;\n  uint uStack_1c0;\n  byte bStack_1b9;\n  code *pcStack_1b8;\n  code *pcStack_1b4;\n  code *pcStack_1b0;\n  int iStack_1ac;\n  code *pcStack_1a8;\n  uint uStack_1a0;\n  code *pcStack_19c;\n  code *pcStack_198;\n  code *pcStack_194;\n  int *piStack_190;\n  code *pcStack_18c;\n  uint uStack_188;\n  uint *puStack_184;\n  code *pcStack_180;\n  code *pcStack_17c;\n  undefined4 uStack_168;\n  code *pcStack_164;\n  code *pcStack_160;\n  code *pcStack_15c;\n  uint uStack_158;\n  byte bStack_151;\n  code *pcStack_150;\n  code *pcStack_14c;\n  code *pcStack_148;\n  code *pcStack_144;\n  code *pcStack_140;\n  code *pcStack_13c;\n  code *pcStack_138;\n  code *pcStack_134;\n  int *piStack_130;\n  code *pcStack_12c;\n  uint uStack_128;\n  uint *puStack_124;\n  code *pcStack_120;\n  code *pcStack_11c;\n  undefined4 uStack_108;\n  int iStack_104;\n  code *pcStack_100;\n  code *pcStack_fc;\n  uint uStack_f8;\n  byte bStack_f1;\n  code *pcStack_f0;\n  code *pcStack_ec;\n  code *pcStack_e8;\n  int iStack_e4;\n  code *pcStack_e0;\n  undefined4 *puStack_d4;\n  code *pcStack_d0;\n  int *piStack_c8;\n  code *pcStack_c4;\n  uint uStack_c0;\n  uint *puStack_bc;\n  code *pcStack_b8;\n  code *pcStack_b4;\n  undefined4 uStack_a0;\n  code *pcStack_9c;\n  code *pcStack_98;\n  code *pcStack_94;\n  uint uStack_90;\n  byte bStack_89;\n  code *pcStack_88;\n  code *pcStack_84;\n  code *pcStack_80;\n  code *pcStack_7c;\n  undefined *puStack_78;\n  int *piStack_74;\n  int iStack_3c;\n  undefined4 *puStack_38;\n  code *pcStack_28;\n  int iStack_24;\n  int iStack_20;\n  \n  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }\n  piVar5 = param_4;\n  if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }\n  PTR_do_gold_unreachable_004c1a30 = pcVar4;\n  return (code *)0x1;\n}" { (declaration "code cVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "code *pcVar3;" type_identifier (pointer_declarator "*pcVar3" * identifier) ;) (declaration "code *pcVar4;" type_identifier (pointer_declarator "*pcVar4" * identifier) ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "code *pcVar16;" type_identifier (pointer_declarator "*pcVar16" * identifier) ;) (declaration "code *unaff_s2;" type_identifier (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "code *unaff_s5;" type_identifier (pointer_declarator "*unaff_s5" * identifier) ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "uint *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "uint *unaff_s7;" type_identifier (pointer_declarator "*unaff_s7" * identifier) ;) (declaration "uint *puVar19;" type_identifier (pointer_declarator "*puVar19" * identifier) ;) (declaration "code *pcVar20;" type_identifier (pointer_declarator "*pcVar20" * identifier) ;) (declaration "code *pcVar21;" type_identifier (pointer_declarator "*pcVar21" * identifier) ;) (declaration "code *pcVar22;" type_identifier (pointer_declarator "*pcVar22" * identifier) ;) (declaration "code *unaff_s8;" type_identifier (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "code *pcVar23;" type_identifier (pointer_declarator "*pcVar23" * identifier) ;) (declaration "code *pcVar24;" type_identifier (pointer_declarator "*pcVar24" * identifier) ;) (declaration "code *pcVar25;" type_identifier (pointer_declarator "*pcVar25" * identifier) ;) (declaration "code *pcVar26;" type_identifier (pointer_declarator "*pcVar26" * identifier) ;) (declaration "undefined1 auStack_288 [8];" type_identifier (array_declarator "auStack_288 [8]" identifier [ number_literal ]) ;) (declaration "code *pcStack_280;" type_identifier (pointer_declarator "*pcStack_280" * identifier) ;) (declaration "code *pcStack_27c;" type_identifier (pointer_declarator "*pcStack_27c" * identifier) ;) (declaration "uint uStack_278;" type_identifier identifier ;) (declaration "code *pcStack_274;" type_identifier (pointer_declarator "*pcStack_274" * identifier) ;) (declaration "int iStack_270;" primitive_type identifier ;) (declaration "uint uStack_268;" type_identifier identifier ;) (declaration "code *pcStack_264;" type_identifier (pointer_declarator "*pcStack_264" * identifier) ;) (declaration "code *pcStack_260;" type_identifier (pointer_declarator "*pcStack_260" * identifier) ;) (declaration "code *pcStack_25c;" type_identifier (pointer_declarator "*pcStack_25c" * identifier) ;) (declaration "int *piStack_258;" primitive_type (pointer_declarator "*piStack_258" * identifier) ;) (declaration "code *pcStack_254;" type_identifier (pointer_declarator "*pcStack_254" * identifier) ;) (declaration "uint *puStack_250;" type_identifier (pointer_declarator "*puStack_250" * identifier) ;) (declaration "uint uStack_24c;" type_identifier identifier ;) (declaration "code *pcStack_248;" type_identifier (pointer_declarator "*pcStack_248" * identifier) ;) (declaration "code *pcStack_244;" type_identifier (pointer_declarator "*pcStack_244" * identifier) ;) (declaration "undefined4 uStack_230;" type_identifier identifier ;) (declaration "code *pcStack_22c;" type_identifier (pointer_declarator "*pcStack_22c" * identifier) ;) (declaration "code *pcStack_228;" type_identifier (pointer_declarator "*pcStack_228" * identifier) ;) (declaration "code *pcStack_224;" type_identifier (pointer_declarator "*pcStack_224" * identifier) ;) (declaration "uint uStack_220;" type_identifier identifier ;) (declaration "char cStack_219;" primitive_type identifier ;) (declaration "code *pcStack_218;" type_identifier (pointer_declarator "*pcStack_218" * identifier) ;) (declaration "code *pcStack_214;" type_identifier (pointer_declarator "*pcStack_214" * identifier) ;) (declaration "code *pcStack_210;" type_identifier (pointer_declarator "*pcStack_210" * identifier) ;) (declaration "int iStack_20c;" primitive_type identifier ;) (declaration "code *pcStack_208;" type_identifier (pointer_declarator "*pcStack_208" * identifier) ;) (declaration "code *pcStack_204;" type_identifier (pointer_declarator "*pcStack_204" * identifier) ;) (declaration "code *pcStack_200;" type_identifier (pointer_declarator "*pcStack_200" * identifier) ;) (declaration "code *pcStack_1fc;" type_identifier (pointer_declarator "*pcStack_1fc" * identifier) ;) (declaration "int *piStack_1f8;" primitive_type (pointer_declarator "*piStack_1f8" * identifier) ;) (declaration "code *pcStack_1f4;" type_identifier (pointer_declarator "*pcStack_1f4" * identifier) ;) (declaration "uint *puStack_1f0;" type_identifier (pointer_declarator "*puStack_1f0" * identifier) ;) (declaration "uint *puStack_1ec;" type_identifier (pointer_declarator "*puStack_1ec" * identifier) ;) (declaration "code *pcStack_1e8;" type_identifier (pointer_declarator "*pcStack_1e8" * identifier) ;) (declaration "code *pcStack_1e4;" type_identifier (pointer_declarator "*pcStack_1e4" * identifier) ;) (declaration "undefined4 uStack_1d0;" type_identifier identifier ;) (declaration "int iStack_1cc;" primitive_type identifier ;) (declaration "code *pcStack_1c8;" type_identifier (pointer_declarator "*pcStack_1c8" * identifier) ;) (declaration "code *pcStack_1c4;" type_identifier (pointer_declarator "*pcStack_1c4" * identifier) ;) (declaration "uint uStack_1c0;" type_identifier identifier ;) (declaration "byte bStack_1b9;" type_identifier identifier ;) (declaration "code *pcStack_1b8;" type_identifier (pointer_declarator "*pcStack_1b8" * identifier) ;) (declaration "code *pcStack_1b4;" type_identifier (pointer_declarator "*pcStack_1b4" * identifier) ;) (declaration "code *pcStack_1b0;" type_identifier (pointer_declarator "*pcStack_1b0" * identifier) ;) (declaration "int iStack_1ac;" primitive_type identifier ;) (declaration "code *pcStack_1a8;" type_identifier (pointer_declarator "*pcStack_1a8" * identifier) ;) (declaration "uint uStack_1a0;" type_identifier identifier ;) (declaration "code *pcStack_19c;" type_identifier (pointer_declarator "*pcStack_19c" * identifier) ;) (declaration "code *pcStack_198;" type_identifier (pointer_declarator "*pcStack_198" * identifier) ;) (declaration "code *pcStack_194;" type_identifier (pointer_declarator "*pcStack_194" * identifier) ;) (declaration "int *piStack_190;" primitive_type (pointer_declarator "*piStack_190" * identifier) ;) (declaration "code *pcStack_18c;" type_identifier (pointer_declarator "*pcStack_18c" * identifier) ;) (declaration "uint uStack_188;" type_identifier identifier ;) (declaration "uint *puStack_184;" type_identifier (pointer_declarator "*puStack_184" * identifier) ;) (declaration "code *pcStack_180;" type_identifier (pointer_declarator "*pcStack_180" * identifier) ;) (declaration "code *pcStack_17c;" type_identifier (pointer_declarator "*pcStack_17c" * identifier) ;) (declaration "undefined4 uStack_168;" type_identifier identifier ;) (declaration "code *pcStack_164;" type_identifier (pointer_declarator "*pcStack_164" * identifier) ;) (declaration "code *pcStack_160;" type_identifier (pointer_declarator "*pcStack_160" * identifier) ;) (declaration "code *pcStack_15c;" type_identifier (pointer_declarator "*pcStack_15c" * identifier) ;) (declaration "uint uStack_158;" type_identifier identifier ;) (declaration "byte bStack_151;" type_identifier identifier ;) (declaration "code *pcStack_150;" type_identifier (pointer_declarator "*pcStack_150" * identifier) ;) (declaration "code *pcStack_14c;" type_identifier (pointer_declarator "*pcStack_14c" * identifier) ;) (declaration "code *pcStack_148;" type_identifier (pointer_declarator "*pcStack_148" * identifier) ;) (declaration "code *pcStack_144;" type_identifier (pointer_declarator "*pcStack_144" * identifier) ;) (declaration "code *pcStack_140;" type_identifier (pointer_declarator "*pcStack_140" * identifier) ;) (declaration "code *pcStack_13c;" type_identifier (pointer_declarator "*pcStack_13c" * identifier) ;) (declaration "code *pcStack_138;" type_identifier (pointer_declarator "*pcStack_138" * identifier) ;) (declaration "code *pcStack_134;" type_identifier (pointer_declarator "*pcStack_134" * identifier) ;) (declaration "int *piStack_130;" primitive_type (pointer_declarator "*piStack_130" * identifier) ;) (declaration "code *pcStack_12c;" type_identifier (pointer_declarator "*pcStack_12c" * identifier) ;) (declaration "uint uStack_128;" type_identifier identifier ;) (declaration "uint *puStack_124;" type_identifier (pointer_declarator "*puStack_124" * identifier) ;) (declaration "code *pcStack_120;" type_identifier (pointer_declarator "*pcStack_120" * identifier) ;) (declaration "code *pcStack_11c;" type_identifier (pointer_declarator "*pcStack_11c" * identifier) ;) (declaration "undefined4 uStack_108;" type_identifier identifier ;) (declaration "int iStack_104;" primitive_type identifier ;) (declaration "code *pcStack_100;" type_identifier (pointer_declarator "*pcStack_100" * identifier) ;) (declaration "code *pcStack_fc;" type_identifier (pointer_declarator "*pcStack_fc" * identifier) ;) (declaration "uint uStack_f8;" type_identifier identifier ;) (declaration "byte bStack_f1;" type_identifier identifier ;) (declaration "code *pcStack_f0;" type_identifier (pointer_declarator "*pcStack_f0" * identifier) ;) (declaration "code *pcStack_ec;" type_identifier (pointer_declarator "*pcStack_ec" * identifier) ;) (declaration "code *pcStack_e8;" type_identifier (pointer_declarator "*pcStack_e8" * identifier) ;) (declaration "int iStack_e4;" primitive_type identifier ;) (declaration "code *pcStack_e0;" type_identifier (pointer_declarator "*pcStack_e0" * identifier) ;) (declaration "undefined4 *puStack_d4;" type_identifier (pointer_declarator "*puStack_d4" * identifier) ;) (declaration "code *pcStack_d0;" type_identifier (pointer_declarator "*pcStack_d0" * identifier) ;) (declaration "int *piStack_c8;" primitive_type (pointer_declarator "*piStack_c8" * identifier) ;) (declaration "code *pcStack_c4;" type_identifier (pointer_declarator "*pcStack_c4" * identifier) ;) (declaration "uint uStack_c0;" type_identifier identifier ;) (declaration "uint *puStack_bc;" type_identifier (pointer_declarator "*puStack_bc" * identifier) ;) (declaration "code *pcStack_b8;" type_identifier (pointer_declarator "*pcStack_b8" * identifier) ;) (declaration "code *pcStack_b4;" type_identifier (pointer_declarator "*pcStack_b4" * identifier) ;) (declaration "undefined4 uStack_a0;" type_identifier identifier ;) (declaration "code *pcStack_9c;" type_identifier (pointer_declarator "*pcStack_9c" * identifier) ;) (declaration "code *pcStack_98;" type_identifier (pointer_declarator "*pcStack_98" * identifier) ;) (declaration "code *pcStack_94;" type_identifier (pointer_declarator "*pcStack_94" * identifier) ;) (declaration "uint uStack_90;" type_identifier identifier ;) (declaration "byte bStack_89;" type_identifier identifier ;) (declaration "code *pcStack_88;" type_identifier (pointer_declarator "*pcStack_88" * identifier) ;) (declaration "code *pcStack_84;" type_identifier (pointer_declarator "*pcStack_84" * identifier) ;) (declaration "code *pcStack_80;" type_identifier (pointer_declarator "*pcStack_80" * identifier) ;) (declaration "code *pcStack_7c;" type_identifier (pointer_declarator "*pcStack_7c" * identifier) ;) (declaration "undefined *puStack_78;" type_identifier (pointer_declarator "*puStack_78" * identifier) ;) (declaration "int *piStack_74;" primitive_type (pointer_declarator "*piStack_74" * identifier) ;) (declaration "int iStack_3c;" primitive_type identifier ;) (declaration "undefined4 *puStack_38;" type_identifier (pointer_declarator "*puStack_38" * identifier) ;) (declaration "code *pcStack_28;" type_identifier (pointer_declarator "*pcStack_28" * identifier) ;) (declaration "int iStack_24;" primitive_type identifier ;) (declaration "int iStack_20;" primitive_type identifier ;) (if_statement "if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }" if (parenthesized_expression "(((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0))" ( (binary_expression "((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)" (parenthesized_expression "((*(uint *)(param_3 + 0x5c) & 2) == 0)" ( (binary_expression "(*(uint *)(param_3 + 0x5c) & 2) == 0" (parenthesized_expression "(*(uint *)(param_3 + 0x5c) & 2)" ( (binary_expression "*(uint *)(param_3 + 0x5c) & 2" (pointer_expression "*(uint *)(param_3 + 0x5c)" * (cast_expression "(uint *)(param_3 + 0x5c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x5c)" ( (binary_expression "param_3 + 0x5c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) || (parenthesized_expression "(param_1 == (code *)0x0)" ( (binary_expression "param_1 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n    return (code *)0x1;\n  }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "piVar5 = param_4;" (assignment_expression "piVar5 = param_4" identifier = identifier) ;) (if_statement "if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" if (parenthesized_expression "(param_2 - 1U < 0xf9)" ( (binary_expression "param_2 - 1U < 0xf9" (binary_expression "param_2 - 1U" identifier - number_literal) < number_literal) )) (compound_statement "{\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" { (expression_statement "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);" (assignment_expression "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9])" identifier = (call_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9])" (parenthesized_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)" ( (pointer_expression "*(code *)PTR_needs_dynamic_reloc_004c1b58" * (cast_expression "(code *)PTR_needs_dynamic_reloc_004c1b58" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9])" ( identifier , (cast_expression "(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)PTR_s__s_004c1a50[param_2 + -0x56e9]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "PTR_s__s_004c1a50[param_2 + -0x56e9]" identifier [ (binary_expression "param_2 + -0x56e9" identifier + number_literal) ]))) )))) ;) (expression_statement "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;" (assignment_expression "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30" identifier = (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }) (else_clause "else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" else (compound_statement "{\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" { (expression_statement "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);" (assignment_expression "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0)" identifier = (call_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0)" (parenthesized_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)" ( (pointer_expression "*(code *)PTR_needs_dynamic_reloc_004c1b58" * (cast_expression "(code *)PTR_needs_dynamic_reloc_004c1b58" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,0)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;" (assignment_expression "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30" identifier = (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }))) (if_statement "if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }" { (expression_statement "PTR_do_gold_unreachable_004c1a30 = pcVar4;" (assignment_expression "PTR_do_gold_unreachable_004c1a30 = pcVar4" identifier = identifier) ;) (if_statement "if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }" if (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) == number_literal) )) (compound_statement "{\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }" { (expression_statement "iVar2 = 0x5c;" (assignment_expression "iVar2 = 0x5c" identifier = number_literal) ;) (expression_statement "puVar9 = PTR_s__s_004c1a50 + -0x33c8;" (assignment_expression "puVar9 = PTR_s__s_004c1a50 + -0x33c8" identifier = (binary_expression "PTR_s__s_004c1a50 + -0x33c8" identifier + number_literal)) ;) (expression_statement "pcVar3 = FUN_000e8e74;" (assignment_expression "pcVar3 = FUN_000e8e74" identifier = identifier) ;) (expression_statement "puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;" (assignment_expression "puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" identifier = (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" identifier + number_literal)) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) (if_statement "if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }" if (parenthesized_expression "(((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0))" ( (binary_expression "((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)" (parenthesized_expression "((*(uint *)(puVar9 + 0x5c) & 2) == 0)" ( (binary_expression "(*(uint *)(puVar9 + 0x5c) & 2) == 0" (parenthesized_expression "(*(uint *)(puVar9 + 0x5c) & 2)" ( (binary_expression "*(uint *)(puVar9 + 0x5c) & 2" (pointer_expression "*(uint *)(puVar9 + 0x5c)" * (cast_expression "(uint *)(puVar9 + 0x5c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar9 + 0x5c)" ( (binary_expression "puVar9 + 0x5c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) || (parenthesized_expression "(puVar8 == (undefined *)0x0)" ( (binary_expression "puVar8 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n        return (code *)0x1;\n      }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "piVar7 = piVar5;" (assignment_expression "piVar7 = piVar5" identifier = identifier) ;) (if_statement "if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" if (parenthesized_expression "(iVar2 - 1U < 0xf9)" ( (binary_expression "iVar2 - 1U < 0xf9" (binary_expression "iVar2 - 1U" identifier - number_literal) < number_literal) )) (compound_statement "{\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" { (expression_statement "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();" (assignment_expression "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))()" identifier = (call_expression "(**(code **)(pcVar4 + 0x3d8ce4))()" (parenthesized_expression "(**(code **)(pcVar4 + 0x3d8ce4))" ( (pointer_expression "**(code **)(pcVar4 + 0x3d8ce4)" * (pointer_expression "*(code **)(pcVar4 + 0x3d8ce4)" * (cast_expression "(code **)(pcVar4 + 0x3d8ce4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8ce4)" ( (binary_expression "pcVar4 + 0x3d8ce4" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) }) (else_clause "else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" else (compound_statement "{\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" { (expression_statement "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();" (assignment_expression "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))()" identifier = (call_expression "(**(code **)(pcVar4 + 0x3d8ce4))()" (parenthesized_expression "(**(code **)(pcVar4 + 0x3d8ce4))" ( (pointer_expression "**(code **)(pcVar4 + 0x3d8ce4)" * (pointer_expression "*(code **)(pcVar4 + 0x3d8ce4)" * (cast_expression "(code **)(pcVar4 + 0x3d8ce4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8ce4)" ( (binary_expression "pcVar4 + 0x3d8ce4" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) }))) (if_statement "if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }" { (if_statement "if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }" if (parenthesized_expression "(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0)" ( (binary_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0" (pointer_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" * (cast_expression "(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(pcVar4 + 0x3d8b40) + 8)" ( (binary_expression "**(int **)(pcVar4 + 0x3d8b40) + 8" (pointer_expression "**(int **)(pcVar4 + 0x3d8b40)" * (pointer_expression "*(int **)(pcVar4 + 0x3d8b40)" * (cast_expression "(int **)(pcVar4 + 0x3d8b40)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8b40)" ( (binary_expression "pcVar4 + 0x3d8b40" identifier + number_literal) ))))) + number_literal) )))) == number_literal) )) (compound_statement "{\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }" { (expression_statement "pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);" (assignment_expression "pcVar20 = *(code **)(pcVar4 + 0x3d8bbc)" identifier = (pointer_expression "*(code **)(pcVar4 + 0x3d8bbc)" * (cast_expression "(code **)(pcVar4 + 0x3d8bbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8bbc)" ( (binary_expression "pcVar4 + 0x3d8bbc" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );" (call_expression "(*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    )" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    )" ( (binary_expression "*(int *)(pcVar4 + 0x3d8408) + -0x9b8" (pointer_expression "*(int *)(pcVar4 + 0x3d8408)" * (cast_expression "(int *)(pcVar4 + 0x3d8408)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + 0x3d8408)" ( (binary_expression "pcVar4 + 0x3d8408" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8" (pointer_expression "*(int *)(pcVar4 + 0x3d8bdc)" * (cast_expression "(int *)(pcVar4 + 0x3d8bdc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + 0x3d8bdc)" ( (binary_expression "pcVar4 + 0x3d8bdc" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar22 = pcVar20 + 0x3e022c;" (assignment_expression "pcVar22 = pcVar20 + 0x3e022c" identifier = (binary_expression "pcVar20 + 0x3e022c" identifier + number_literal)) ;) (expression_statement "uVar17 = (uint)pcVar3 & 0xff;" (assignment_expression "uVar17 = (uint)pcVar3 & 0xff" identifier = (binary_expression "(uint)pcVar3 & 0xff" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "piVar13 = piVar7;" (assignment_expression "piVar13 = piVar7" identifier = identifier) ;) (expression_statement "pcStack_98 = pcVar22;" (assignment_expression "pcStack_98 = pcVar22" identifier = identifier) ;) (expression_statement "puStack_78 = puVar8;" (assignment_expression "puStack_78 = puVar8" identifier = identifier) ;) (expression_statement "piStack_74 = piVar5;" (assignment_expression "piStack_74 = piVar5" identifier = identifier) ;) (if_statement "if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }" if (parenthesized_expression "(iStack_3c == 9)" ( (binary_expression "iStack_3c == 9" identifier == number_literal) )) (compound_statement "{\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }" { (expression_statement "pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);" (assignment_expression "pcStack_88 = *(code **)(pcVar20 + 0x3d8b10)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x3d8b10)" * (cast_expression "(code **)(pcVar20 + 0x3d8b10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x3d8b10)" ( (binary_expression "pcVar20 + 0x3d8b10" identifier + number_literal) ))))) ;) (expression_statement "pcVar3 = pcStack_88;" (assignment_expression "pcVar3 = pcStack_88" identifier = identifier) ;) (if_statement "if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }" if (parenthesized_expression "(param_1 != (code *)0x0)" ( (binary_expression "param_1 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }" { (expression_statement "unaff_s2 = (code *)0x0;" (assignment_expression "unaff_s2 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);" (assignment_expression "unaff_s5 = *(code **)(pcVar20 + 0x3d8b48)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x3d8b48)" * (cast_expression "(code **)(pcVar20 + 0x3d8b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x3d8b48)" ( (binary_expression "pcVar20 + 0x3d8b48" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8 = (code *)&uStack_90;" (assignment_expression "unaff_s8 = (code *)&uStack_90" identifier = (cast_expression "(code *)&uStack_90" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_90" & identifier))) ;) (expression_statement "unaff_s7 = (uint *)0xff00;" (assignment_expression "unaff_s7 = (uint *)0xff00" identifier = (cast_expression "(uint *)0xff00" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);" do (compound_statement "{\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              }" { (if_statement "if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }" { (labeled_statement "LAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);" statement_identifier : (expression_statement "pcVar3 = (code *)((uint)puStack_38[1] >> 8);" (assignment_expression "pcVar3 = (code *)((uint)puStack_38[1] >> 8)" identifier = (cast_expression "(code *)((uint)puStack_38[1] >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)puStack_38[1] >> 8)" ( (binary_expression "(uint)puStack_38[1] >> 8" (cast_expression "(uint)puStack_38[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puStack_38[1]" identifier [ number_literal ])) >> number_literal) )))) ;)) (if_statement "if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }" if (parenthesized_expression "(pcVar3 < pcStack_28)" ( (binary_expression "pcVar3 < pcStack_28" identifier < identifier) )) (compound_statement "{\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }" { (expression_statement "pcVar20 = (code *)((int)pcVar3 * 0x10);" (assignment_expression "pcVar20 = (code *)((int)pcVar3 * 0x10)" identifier = (cast_expression "(code *)((int)pcVar3 * 0x10)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar3 * 0x10)" ( (binary_expression "(int)pcVar3 * 0x10" (cast_expression "(int)pcVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if (iStack_24 == 0) goto LAB_000e9610;" if (parenthesized_expression "(iStack_24 == 0)" ( (binary_expression "iStack_24 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9610;" goto statement_identifier ;)) (expression_statement "pcVar15 = pcVar20 + iStack_24;" (assignment_expression "pcVar15 = pcVar20 + iStack_24" identifier = (binary_expression "pcVar20 + iStack_24" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe)" identifier = (binary_expression "(uint)*(ushort *)(pcVar15 + 0xe)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar15 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe)" ( (binary_expression "pcVar15 + 0xe" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }" { (labeled_statement "LAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000e9394;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9394;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e962c;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;" if (parenthesized_expression "(*(int *)(piVar7[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar7[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" ( (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9434;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" identifier = (subscript_expression "pcVar15[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }" else (compound_statement "{\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }" { (if_statement "if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }" { (expression_statement "iVar2 = piVar7[0xc];" (assignment_expression "iVar2 = piVar7[0xc]" identifier = (subscript_expression "piVar7[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_84 = pcVar3;" (assignment_expression "pcStack_84 = pcVar3" identifier = identifier) ;) (expression_statement "pcStack_7c = pcVar15;" (assignment_expression "pcStack_7c = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_80 = pcVar20;" (assignment_expression "pcStack_80 = pcVar20" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7)" identifier = (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" ( (pointer_expression "**(code **)(*piVar7 + 0x6c)" * (pointer_expression "*(code **)(*piVar7 + 0x6c)" * (cast_expression "(code **)(*piVar7 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x6c)" ( (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7)" ( identifier )))) ;) (expression_statement "piVar7[0xc] = iVar2;" (assignment_expression "piVar7[0xc] = iVar2" (subscript_expression "piVar7[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);" (assignment_expression "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7790)" * (pointer_expression "*(code **)(pcStack_98 + -0x7790)" * (cast_expression "(code **)(pcStack_98 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7790)" ( (binary_expression "pcStack_98 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar7,pcStack_84)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar3 = pcStack_84;" (assignment_expression "pcVar3 = pcStack_84" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_7c;" (assignment_expression "pcVar15 = pcStack_7c" identifier = identifier) ;) (expression_statement "pcVar20 = pcStack_80;" (assignment_expression "pcVar20 = pcStack_80" identifier = identifier) ;) (goto_statement "goto LAB_000e948c;" goto statement_identifier ;) })) (labeled_statement "LAB_000e9394:\n                      cVar1 = pcVar15[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" identifier = (subscript_expression "pcVar15[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" { (if_statement "if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" if (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == pcStack_88)" ( (binary_expression "*(code **)(*piVar7 + 0x60) == pcStack_88" (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" { (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e95d8;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" ( (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" else (compound_statement "{\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" identifier = (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" ( (pointer_expression "**(code **)(*piVar7 + 0x60)" * (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_90 = CONCAT13(2,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(2,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_90._1_3_)" identifier (argument_list "(2,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" ( (pointer_expression "*unaff_s5" * identifier) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" else (compound_statement "{\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" { (if_statement "if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;" if (parenthesized_expression "((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3)" ( (binary_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3" (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e95bc;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);" (assignment_expression "iVar2 = *(int *)(pcVar20 + piVar7[0x3a])" identifier = (pointer_expression "*(int *)(pcVar20 + piVar7[0x3a])" * (cast_expression "(int *)(pcVar20 + piVar7[0x3a])" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + piVar7[0x3a])" ( (binary_expression "pcVar20 + piVar7[0x3a]" identifier + (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) ))))) ;) (if_statement "if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;" if (parenthesized_expression "((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))" ( (binary_expression "(iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2)" ( (comma_expression "iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2" (assignment_expression "iVar11 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "iVar2 != -2" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000e9238;" goto statement_identifier ;)) (expression_statement "*(int *)(pcVar20 + piVar7[0x3a]) = -2;" (assignment_expression "*(int *)(pcVar20 + piVar7[0x3a]) = -2" (pointer_expression "*(int *)(pcVar20 + piVar7[0x3a])" * (cast_expression "(int *)(pcVar20 + piVar7[0x3a])" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + piVar7[0x3a])" ( (binary_expression "pcVar20 + piVar7[0x3a]" identifier + (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) )))) = number_literal) ;) (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" ( (pointer_expression "*unaff_s5" * identifier) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }" else (compound_statement "{\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }" { (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" ( (pointer_expression "*unaff_s5" * identifier) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;" (assignment_expression "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }" else (compound_statement "{\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }" { (expression_statement "pcStack_9c = (code *)*puStack_38;" (assignment_expression "pcStack_9c = (code *)*puStack_38" identifier = (cast_expression "(code *)*puStack_38" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puStack_38" * identifier))) ;) (expression_statement "uStack_a0 = 0;" (assignment_expression "uStack_a0 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);" (assignment_expression "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_98 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_98 + -0x76e0)" * (cast_expression "(code **)(pcStack_98 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x76e0)" ( (binary_expression "pcStack_98 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(param_4,piVar7,pcVar4 + 0x3e03cc)" ( identifier , identifier , (binary_expression "pcVar4 + 0x3e03cc" identifier + number_literal) )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000e9358;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000e9358;" goto statement_identifier ;)) (labeled_statement "LAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);" statement_identifier : (expression_statement "uStack_90 = CONCAT13(8,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(8,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_90._1_3_)" identifier (argument_list "(8,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" ( (pointer_expression "*unaff_s5" * identifier) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }))) (expression_statement "unaff_s2 = unaff_s2 + 1;" (assignment_expression "unaff_s2 = unaff_s2 + 1" identifier = (binary_expression "unaff_s2 + 1" identifier + number_literal)) ;) (expression_statement "puStack_38 = puStack_38 + 2;" (assignment_expression "puStack_38 = puStack_38 + 2" identifier = (binary_expression "puStack_38 + 2" identifier + number_literal)) ;) (expression_statement "pcVar3 = param_1;" (assignment_expression "pcVar3 = param_1" identifier = identifier) ;) }) while (parenthesized_expression "(param_1 != unaff_s2)" ( (binary_expression "param_1 != unaff_s2" identifier != identifier) )) ;) })) }) (else_clause "else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }" else (compound_statement "{\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }" { (if_statement "if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }" if (parenthesized_expression "(iStack_3c != 4)" ( (binary_expression "iStack_3c != 4" identifier != number_literal) )) (compound_statement "{\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }" { (labeled_statement "LAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);" statement_identifier : (expression_statement "(**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);" (call_expression "(**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" ( (pointer_expression "**(code **)(pcVar22 + -0x7810)" * (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + -0x77f0) + -0x502c" (pointer_expression "*(int *)(pcVar22 + -0x77f0)" * (cast_expression "(int *)(pcVar22 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x77f0)" ( (binary_expression "pcVar22 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;" statement_identifier : (expression_statement "iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;" (assignment_expression "iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044" identifier = (binary_expression "*(int *)(pcVar22 + -0x77f0) + -0x5044" (pointer_expression "*(int *)(pcVar22 + -0x77f0)" * (cast_expression "(int *)(pcVar22 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x77f0)" ( (binary_expression "pcVar22 + -0x77f0" identifier + number_literal) )))) + number_literal)) ;)) (expression_statement "(**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);" (call_expression "(**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" ( (pointer_expression "**(code **)(pcVar22 + -0x7810)" * (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);" statement_identifier : (expression_statement "pcVar21 = *(code **)(pcVar22 + -0x7810);" (assignment_expression "pcVar21 = *(code **)(pcVar22 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar24 = FUN_000e9644;" (assignment_expression "pcVar24 = FUN_000e9644" identifier = identifier) ;) (expression_statement "(*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);" (call_expression "(*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x34dc" identifier + number_literal) ))) ;) (expression_statement "pcVar20 = pcStack_80;" (assignment_expression "pcVar20 = pcStack_80" identifier = identifier) ;) (expression_statement "pcVar22 = pcStack_84;" (assignment_expression "pcVar22 = pcStack_84" identifier = identifier) ;) (expression_statement "pcVar3 = pcStack_9c;" (assignment_expression "pcVar3 = pcStack_9c" identifier = identifier) ;) (expression_statement "pcVar4 = pcVar21 + 0x3dfbfc;" (assignment_expression "pcVar4 = pcVar21 + 0x3dfbfc" identifier = (binary_expression "pcVar21 + 0x3dfbfc" identifier + number_literal)) ;) (expression_statement "uVar6 = (uint)bStack_89;" (assignment_expression "uVar6 = (uint)bStack_89" identifier = (cast_expression "(uint)bStack_89" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "piVar5 = piVar13;" (assignment_expression "piVar5 = piVar13" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_98;" (assignment_expression "pcVar15 = pcStack_98" identifier = identifier) ;) (expression_statement "pcStack_100 = pcVar4;" (assignment_expression "pcStack_100 = pcVar4" identifier = identifier) ;) (expression_statement "puStack_d4 = puStack_38;" (assignment_expression "puStack_d4 = puStack_38" identifier = identifier) ;) (expression_statement "pcStack_d0 = unaff_s2;" (assignment_expression "pcStack_d0 = unaff_s2" identifier = identifier) ;) (expression_statement "piStack_c8 = piVar7;" (assignment_expression "piStack_c8 = piVar7" identifier = identifier) ;) (expression_statement "pcStack_c4 = unaff_s5;" (assignment_expression "pcStack_c4 = unaff_s5" identifier = identifier) ;) (expression_statement "uStack_c0 = uVar17;" (assignment_expression "uStack_c0 = uVar17" identifier = identifier) ;) (expression_statement "puStack_bc = unaff_s7;" (assignment_expression "puStack_bc = unaff_s7" identifier = identifier) ;) (expression_statement "pcStack_b8 = unaff_s8;" (assignment_expression "pcStack_b8 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_b4 = pcVar24;" (assignment_expression "pcStack_b4 = pcVar24" identifier = identifier) ;) (if_statement "if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }" if (parenthesized_expression "(pcStack_9c == (code *)0x9)" ( (binary_expression "pcStack_9c == (code *)0x9" identifier == (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }" { (expression_statement "pcVar4 = *(code **)(pcVar21 + 0x3d8408);" (assignment_expression "pcVar4 = *(code **)(pcVar21 + 0x3d8408)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x3d8408)" * (cast_expression "(code **)(pcVar21 + 0x3d8408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d8408)" ( (binary_expression "pcVar21 + 0x3d8408" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }" if (parenthesized_expression "(pcStack_94 != (code *)0x0)" ( (binary_expression "pcStack_94 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }" { (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x3d84e0);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x3d84e0)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x3d84e0)" * (cast_expression "(code **)(pcVar21 + 0x3d84e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d84e0)" ( (binary_expression "pcVar21 + 0x3d84e0" identifier + number_literal) ))))) ;) (expression_statement "pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;" (assignment_expression "pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864" identifier = (binary_expression "*(code **)(pcVar21 + 0x3d8408) + 0x1864" (pointer_expression "*(code **)(pcVar21 + 0x3d8408)" * (cast_expression "(code **)(pcVar21 + 0x3d8408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d8408)" ( (binary_expression "pcVar21 + 0x3d8408" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);" (assignment_expression "puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448)" identifier = (cast_expression "(uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x3d7c38) + 0x5448)" ( (binary_expression "*(int *)(pcVar21 + 0x3d7c38) + 0x5448" (pointer_expression "*(int *)(pcVar21 + 0x3d7c38)" * (cast_expression "(int *)(pcVar21 + 0x3d7c38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x3d7c38)" ( (binary_expression "pcVar21 + 0x3d7c38" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);" do (compound_statement "{\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  }" { (if_statement "if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }" { (labeled_statement "LAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);" statement_identifier : (expression_statement "pcVar21 = *(code **)(pcVar15 + 4);" (assignment_expression "pcVar21 = *(code **)(pcVar15 + 4)" identifier = (pointer_expression "*(code **)(pcVar15 + 4)" * (cast_expression "(code **)(pcVar15 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 4)" ( (binary_expression "pcVar15 + 4" identifier + number_literal) ))))) ;)) (expression_statement "pcVar14 = (code *)((uint)pcVar21 >> 8);" (assignment_expression "pcVar14 = (code *)((uint)pcVar21 >> 8)" identifier = (cast_expression "(code *)((uint)pcVar21 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pcVar21 >> 8)" ( (binary_expression "(uint)pcVar21 >> 8" (cast_expression "(uint)pcVar21" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" if (parenthesized_expression "(pcVar14 < pcStack_88)" ( (binary_expression "pcVar14 < pcStack_88" identifier < identifier) )) (compound_statement "{\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" { (expression_statement "iVar2 = (int)pcVar14 * 0x10;" (assignment_expression "iVar2 = (int)pcVar14 * 0x10" identifier = (binary_expression "(int)pcVar14 * 0x10" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if (pcVar22 == (code *)0x0) goto LAB_000e9d24;" if (parenthesized_expression "(pcVar22 == (code *)0x0)" ( (binary_expression "pcVar22 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e9d24;" goto statement_identifier ;)) (expression_statement "pcVar16 = pcVar22 + iVar2;" (assignment_expression "pcVar16 = pcVar22 + iVar2" identifier = (binary_expression "pcVar22 + iVar2" identifier + identifier)) ;) (expression_statement "pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);" (assignment_expression "pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe)" identifier = (binary_expression "(code *)(uint)*(ushort *)(pcVar16 + 0xe)" (cast_expression "(code *)(uint)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uint)" ( identifier ))) * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) ))))) ;) (if_statement "if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }" if (parenthesized_expression "(pcVar25 < (code *)0xff00)" ( (binary_expression "pcVar25 < (code *)0xff00" identifier < (cast_expression "(code *)0xff00" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }" { (labeled_statement "LAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;" statement_identifier : (if_statement "if (pcVar25 == (code *)0x0) goto LAB_000e99e8;" if (parenthesized_expression "(pcVar25 == (code *)0x0)" ( (binary_expression "pcVar25 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e99e8;" goto statement_identifier ;))) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;" if (parenthesized_expression "((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)" ( (binary_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9d08;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;" if (parenthesized_expression "(*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0)" ( (binary_expression "*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + (int)pcVar25 * 4)" * (cast_expression "(int *)(piVar13[0xe] + (int)pcVar25 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + (int)pcVar25 * 4)" ( (binary_expression "piVar13[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9a0c;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }" else (compound_statement "{\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }" { (if_statement "if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }" if (parenthesized_expression "(pcVar25 == (code *)0xffff)" ( (binary_expression "pcVar25 == (code *)0xffff" identifier == (cast_expression "(code *)0xffff" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }" { (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" identifier = (subscript_expression "piVar13[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_ec = pcVar21;" (assignment_expression "pcStack_ec = pcVar21" identifier = identifier) ;) (expression_statement "pcStack_e8 = pcVar14;" (assignment_expression "pcStack_e8 = pcVar14" identifier = identifier) ;) (expression_statement "iStack_e4 = iVar2;" (assignment_expression "iStack_e4 = iVar2" identifier = identifier) ;) (expression_statement "pcStack_e0 = pcVar16;" (assignment_expression "pcStack_e0 = pcVar16" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }" { (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8)" identifier = (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" ( (pointer_expression "**(code **)(*piVar13 + 0x6c)" * (pointer_expression "*(code **)(*piVar13 + 0x6c)" * (cast_expression "(code **)(*piVar13 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x6c)" ( (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) )))) ;) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (uint)pcStack_ec;" (assignment_expression "uVar17 = (uint)pcStack_ec" identifier = (cast_expression "(uint)pcStack_ec" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_ec = pcStack_e8;" (assignment_expression "pcStack_ec = pcStack_e8" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_e8;" (assignment_expression "pcVar4 = pcStack_e8" identifier = identifier) ;) (expression_statement "pcStack_e8 = (code *)uVar17;" (assignment_expression "pcStack_e8 = (code *)uVar17" identifier = (cast_expression "(code *)uVar17" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);" (assignment_expression "pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4)" identifier = (cast_expression "(code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7790)" * (pointer_expression "*(code **)(pcStack_100 + -0x7790)" * (cast_expression "(code **)(pcStack_100 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7790)" ( (binary_expression "pcStack_100 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar13,pcVar4)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pcVar21 = pcStack_e8;" (assignment_expression "pcVar21 = pcStack_e8" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_ec;" (assignment_expression "pcVar14 = pcStack_ec" identifier = identifier) ;) (expression_statement "iVar2 = iStack_e4;" (assignment_expression "iVar2 = iStack_e4" identifier = identifier) ;) (expression_statement "pcVar16 = pcStack_e0;" (assignment_expression "pcVar16 = pcStack_e0" identifier = identifier) ;) (goto_statement "goto LAB_000e9ad8;" goto statement_identifier ;) })) (labeled_statement "LAB_000e99e8:\n                          cVar1 = pcVar16[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "uVar17 = (uint)pcVar21 & 0xff;" (assignment_expression "uVar17 = (uint)pcVar21 & 0xff" identifier = (binary_expression "(uint)pcVar21 & 0xff" (cast_expression "(uint)pcVar21" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }" if (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" ( (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }" { (if_statement "if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;" if (parenthesized_expression "(pcVar14 == (code *)0x0 && uVar17 == 0)" ( (binary_expression "pcVar14 == (code *)0x0 && uVar17 == 0" (binary_expression "pcVar14 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (binary_expression "uVar17 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_000e9a0c;" goto statement_identifier ;)) (expression_statement "piVar7 = (int *)(piVar13[0x3a] + iVar2);" (assignment_expression "piVar7 = (int *)(piVar13[0x3a] + iVar2)" identifier = (cast_expression "(int *)(piVar13[0x3a] + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3a] + iVar2)" ( (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }" if (parenthesized_expression "(pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4))" ( (binary_expression "pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)" identifier < (cast_expression "(code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 4)" ( (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 4" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar13[0x3a]" identifier [ number_literal ])) >> number_literal) )))) )) (compound_statement "{\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }" { (expression_statement "iVar2 = *piVar7;" (assignment_expression "iVar2 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (if_statement "if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }" { (expression_statement "uVar17 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar17 = *(uint *)(pcStack_100 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = (code *)0x9;" (assignment_expression "pcVar4 = (code *)0x9" identifier = (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 != -2) goto LAB_000e981c;" if (parenthesized_expression "(iVar2 != -2)" ( (binary_expression "iVar2 != -2" identifier != number_literal) )) (goto_statement "goto LAB_000e981c;" goto statement_identifier ;)) })) (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" * identifier) = number_literal) ;) (goto_statement "goto LAB_000e9970;" goto statement_identifier ;) })) (goto_statement "goto LAB_000e9cb4;" goto statement_identifier ;) })) (if_statement "if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }" if (parenthesized_expression "(uVar17 != 4)" ( (binary_expression "uVar17 != 4" identifier != number_literal) )) (compound_statement "{\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }" { (expression_statement "pcStack_ec = pcVar25;" (assignment_expression "pcStack_ec = pcVar25" identifier = identifier) ;) (expression_statement "uVar17 = (*pcStack_f0)(uVar17,piVar13);" (assignment_expression "uVar17 = (*pcStack_f0)(uVar17,piVar13)" identifier = (call_expression "(*pcStack_f0)(uVar17,piVar13)" (parenthesized_expression "(*pcStack_f0)" ( (pointer_expression "*pcStack_f0" * identifier) )) (argument_list "(uVar17,piVar13)" ( identifier , identifier )))) ;) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" if (parenthesized_expression "(uVar17 < 9)" ( (binary_expression "uVar17 < 9" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" { comment comment (expression_statement "pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();" (assignment_expression "pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))()" identifier = (cast_expression "(code *)(*(pcStack_100 + puVar19[uVar17]))()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(pcStack_100 + puVar19[uVar17]))()" (parenthesized_expression "(*(pcStack_100 + puVar19[uVar17]))" ( (pointer_expression "*(pcStack_100 + puVar19[uVar17])" * (parenthesized_expression "(pcStack_100 + puVar19[uVar17])" ( (binary_expression "pcStack_100 + puVar19[uVar17]" identifier + (subscript_expression "puVar19[uVar17]" identifier [ identifier ])) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (goto_statement "goto switchD_000e9b48_caseD_3;" goto statement_identifier ;) })) (if_statement "if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }" if (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcVar23)" ( (binary_expression "*(code **)(*piVar13 + 0x60) == pcVar23" (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }" { (if_statement "if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;" if (parenthesized_expression "((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)" ( (binary_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9cec;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4)" identifier = (pointer_expression "*(int *)(piVar13[0xe] + (int)pcVar25 * 4)" * (cast_expression "(int *)(piVar13[0xe] + (int)pcVar25 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + (int)pcVar25 * 4)" ( (binary_expression "piVar13[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))))) ;) (expression_statement "pcStack_ec = pcVar3;" (assignment_expression "pcStack_ec = pcVar3" identifier = identifier) ;) }) (else_clause "else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }" else (compound_statement "{\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }" { (expression_statement "pcStack_ec = pcVar3;" (assignment_expression "pcStack_ec = pcVar3" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25)" identifier = (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,pcVar25)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" ( (pointer_expression "**(code **)(*piVar13 + 0x60)" * (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,pcVar25)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar4 = *(code **)(pcStack_100 + -0x76e4);" (assignment_expression "pcVar4 = *(code **)(pcStack_100 + -0x76e4)" identifier = (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" * (cast_expression "(code **)(pcStack_100 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e4)" ( (binary_expression "pcStack_100 + -0x76e4" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13((char)pcStack_ec,uStack_f8._1_3_)" identifier (argument_list "((char)pcStack_ec,uStack_f8._1_3_)" ( (cast_expression "(char)pcStack_ec" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar4)(pcVar20,&uStack_f8);" (call_expression "(*pcVar4)(pcVar20,&uStack_f8)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pcVar20,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) ))) ;) (if_statement "if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;" if (parenthesized_expression "(pcStack_ec == (code *)&DAT_00000008)" ( (binary_expression "pcStack_ec == (code *)&DAT_00000008" identifier == (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000e9990;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar20 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar20 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) ))))) ;) }) (else_clause "else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" else (compound_statement "{\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" { (labeled_statement "LAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;" statement_identifier : (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" identifier = (binary_expression "uStack_f8 & 0xffffff" identifier & number_literal)) ;)) (expression_statement "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);" (call_expression "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" * (cast_expression "(code **)(pcStack_100 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e4)" ( (binary_expression "pcStack_100 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pcVar20,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) ))) ;) (expression_statement "iVar2 = *(int *)(pcVar20 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar20 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) ))))) ;) }))) (expression_statement "*(int *)(pcVar20 + 0xc) = iVar2 + 1;" (assignment_expression "*(int *)(pcVar20 + 0xc) = iVar2 + 1" (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }" else (compound_statement "{\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }" { (expression_statement "iStack_104 = *(int *)pcVar15;" (assignment_expression "iStack_104 = *(int *)pcVar15" identifier = (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);" (assignment_expression "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" identifier = (call_expression "(**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e0)" * (cast_expression "(code **)(pcStack_100 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e0)" ( (binary_expression "pcStack_100 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_90,piVar13,uStack_a0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000e99a8;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000e99a8;" goto statement_identifier ;)) (labeled_statement "LAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);" statement_identifier : (expression_statement "uStack_f8 = CONCAT13(8,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13(8,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_f8._1_3_)" identifier (argument_list "(8,uStack_f8._1_3_)" ( number_literal , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);" (call_expression "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" * (cast_expression "(code **)(pcStack_100 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e4)" ( (binary_expression "pcStack_100 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pcVar20,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) ))) ;) }))) (labeled_statement "LAB_000e9990:\n                    pcVar24 = pcVar24 + 1;" statement_identifier : (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;)) (expression_statement "pcVar15 = pcVar15 + 8;" (assignment_expression "pcVar15 = pcVar15 + 8" identifier = (binary_expression "pcVar15 + 8" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcStack_94;" (assignment_expression "pcVar4 = pcStack_94" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_94 != pcVar24)" ( (binary_expression "pcStack_94 != pcVar24" identifier != identifier) )) ;) })) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "pcVar24 = unaff_s2;" (assignment_expression "pcVar24 = unaff_s2" identifier = identifier) ;) (expression_statement "puVar19 = unaff_s7;" (assignment_expression "puVar19 = unaff_s7" identifier = identifier) ;) (expression_statement "pcVar23 = unaff_s8;" (assignment_expression "pcVar23 = unaff_s8" identifier = identifier) ;) (if_statement "if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }" if (parenthesized_expression "(pcStack_9c == (code *)&DAT_00000004)" ( (binary_expression "pcStack_9c == (code *)&DAT_00000004" identifier == (cast_expression "(code *)&DAT_00000004" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }" { (expression_statement "pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);" (assignment_expression "pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x3d84e0)" * (cast_expression "(code **)(pcVar21 + 0x3d84e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d84e0)" ( (binary_expression "pcVar21 + 0x3d84e0" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }" if (parenthesized_expression "(pcStack_94 == (code *)0x0)" ( (binary_expression "pcStack_94 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  return pcStack_f0;\n                }" { (return_statement "return pcStack_f0;" return identifier ;) })) (expression_statement "pcVar3 = (code *)0x0;" (assignment_expression "pcVar3 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar24 = *(code **)(pcVar21 + 0x3d8518);" (assignment_expression "pcVar24 = *(code **)(pcVar21 + 0x3d8518)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x3d8518)" * (cast_expression "(code **)(pcVar21 + 0x3d8518)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d8518)" ( (binary_expression "pcVar21 + 0x3d8518" identifier + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)&DAT_00000008;" (assignment_expression "pcVar23 = (code *)&DAT_00000008" identifier = (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) ;) (expression_statement "puVar19 = &uStack_f8;" (assignment_expression "puVar19 = &uStack_f8" identifier = (pointer_expression "&uStack_f8" & identifier)) ;) (labeled_statement "LAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }" statement_identifier : (while_statement "while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }" while (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }" { (expression_statement "iStack_104 = *(int *)pcVar15;" (assignment_expression "iStack_104 = *(int *)pcVar15" identifier = (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);" (assignment_expression "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" identifier = (call_expression "(**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e0)" * (cast_expression "(code **)(pcStack_100 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e0)" ( (binary_expression "pcStack_100 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_90,piVar13,uStack_a0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);" statement_identifier : (expression_statement "uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13((char)pcVar23,uStack_f8._1_3_)" identifier (argument_list "((char)pcVar23,uStack_f8._1_3_)" ( (cast_expression "(char)pcVar23" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar20,puVar19)" ( identifier , identifier ))) ;) (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" identifier = (binary_expression "pcVar3 + 1" identifier + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0xc;" (assignment_expression "pcVar15 = pcVar15 + 0xc" identifier = (binary_expression "pcVar15 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }" if (parenthesized_expression "(pcStack_94 == pcVar3)" ( (binary_expression "pcStack_94 == pcVar3" identifier == identifier) )) (compound_statement "{\n                    return pcStack_94;\n                  }" { (return_statement "return pcStack_94;" return identifier ;) })) }))) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (expression_statement "pcVar14 = *(code **)(pcVar15 + 4);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 4)" identifier = (pointer_expression "*(code **)(pcVar15 + 4)" * (cast_expression "(code **)(pcVar15 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 4)" ( (binary_expression "pcVar15 + 4" identifier + number_literal) ))))) ;) (expression_statement "pcVar21 = (code *)((uint)pcVar14 >> 8);" (assignment_expression "pcVar21 = (code *)((uint)pcVar14 >> 8)" identifier = (cast_expression "(code *)((uint)pcVar14 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pcVar14 >> 8)" ( (binary_expression "(uint)pcVar14 >> 8" (cast_expression "(uint)pcVar14" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }" if (parenthesized_expression "(pcStack_88 <= pcVar21)" ( (binary_expression "pcStack_88 <= pcVar21" identifier <= identifier) )) (compound_statement "{\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }" { (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" identifier = (binary_expression "uStack_f8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar20,puVar19)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;" statement_identifier : (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" identifier = (binary_expression "pcVar3 + 1" identifier + number_literal)) ;)) (expression_statement "*(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;" (assignment_expression "*(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1" (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(pcVar20 + 0xc) + 1" (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0xc;" (assignment_expression "pcVar15 = pcVar15 + 0xc" identifier = (binary_expression "pcVar15 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }" if (parenthesized_expression "(pcStack_94 == pcVar3)" ( (binary_expression "pcStack_94 == pcVar3" identifier == identifier) )) (compound_statement "{\n                    return pcStack_94;\n                  }" { (return_statement "return pcStack_94;" return identifier ;) })) (goto_statement "goto LAB_000e96fc;" goto statement_identifier ;) })) (expression_statement "iVar2 = (int)pcVar21 * 0x10;" (assignment_expression "iVar2 = (int)pcVar21 * 0x10" identifier = (binary_expression "(int)pcVar21 * 0x10" (cast_expression "(int)pcVar21" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }" if (parenthesized_expression "(pcVar22 != (code *)0x0)" ( (binary_expression "pcVar22 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }" { (expression_statement "pcVar16 = pcVar22 + iVar2;" (assignment_expression "pcVar16 = pcVar22 + iVar2" identifier = (binary_expression "pcVar22 + iVar2" identifier + identifier)) ;) (expression_statement "uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);" (assignment_expression "uVar17 = (uint)*(ushort *)(pcVar16 + 0xe)" identifier = (binary_expression "(uint)*(ushort *)(pcVar16 + 0xe)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) ))))) ;) (if_statement "if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }" if (parenthesized_expression "(uVar17 < 0xff00)" ( (binary_expression "uVar17 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }" { (labeled_statement "LAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;" statement_identifier : (if_statement "if (uVar17 == 0) goto LAB_000e9744;" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9744;" goto statement_identifier ;))) (expression_statement "uVar10 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcStack_100 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9d0c;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;" if (parenthesized_expression "(*(int *)(piVar13[0xe] + uVar17 * 4) == 0)" ( (binary_expression "*(int *)(piVar13[0xe] + uVar17 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar17 * 4)" ( (binary_expression "piVar13[0xe] + uVar17 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9768;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }" else (compound_statement "{\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }" { (if_statement "if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }" if (parenthesized_expression "(uVar17 == 0xffff)" ( (binary_expression "uVar17 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }" { (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" identifier = (subscript_expression "piVar13[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_e8 = pcVar21;" (assignment_expression "pcStack_e8 = pcVar21" identifier = identifier) ;) (expression_statement "pcStack_ec = pcVar14;" (assignment_expression "pcStack_ec = pcVar14" identifier = identifier) ;) (expression_statement "iStack_e4 = iVar2;" (assignment_expression "iStack_e4 = iVar2" identifier = identifier) ;) (expression_statement "pcStack_e0 = pcVar16;" (assignment_expression "pcStack_e0 = pcVar16" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }" { (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13)" identifier = (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" ( (pointer_expression "**(code **)(*piVar13 + 0x6c)" * (pointer_expression "*(code **)(*piVar13 + 0x6c)" * (cast_expression "(code **)(*piVar13 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x6c)" ( (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13)" ( identifier )))) ;) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (uint)pcStack_ec;" (assignment_expression "uVar17 = (uint)pcStack_ec" identifier = (cast_expression "(uint)pcStack_ec" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_ec = pcStack_e8;" (assignment_expression "pcStack_ec = pcStack_e8" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_e8;" (assignment_expression "pcVar4 = pcStack_e8" identifier = identifier) ;) (expression_statement "pcStack_e8 = (code *)uVar17;" (assignment_expression "pcStack_e8 = (code *)uVar17" identifier = (cast_expression "(code *)uVar17" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);" (assignment_expression "uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4)" identifier = (call_expression "(**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7790)" * (pointer_expression "*(code **)(pcStack_100 + -0x7790)" * (cast_expression "(code **)(pcStack_100 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7790)" ( (binary_expression "pcStack_100 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar13,pcVar4)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar21 = pcStack_ec;" (assignment_expression "pcVar21 = pcStack_ec" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_e8;" (assignment_expression "pcVar14 = pcStack_e8" identifier = identifier) ;) (expression_statement "iVar2 = iStack_e4;" (assignment_expression "iVar2 = iStack_e4" identifier = identifier) ;) (expression_statement "pcVar16 = pcStack_e0;" (assignment_expression "pcVar16 = pcStack_e0" identifier = identifier) ;) (goto_statement "goto LAB_000e9898;" goto statement_identifier ;) })) (labeled_statement "LAB_000e9744:\n                    cVar1 = pcVar16[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" { (if_statement "if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcStack_f0)" ( (binary_expression "*(code **)(*piVar13 + 0x60) == pcStack_f0" (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9cec;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4)" identifier = (pointer_expression "*(int *)(piVar13[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar17 * 4)" ( (binary_expression "piVar13[0xe] + uVar17 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17)" identifier = (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,uVar17)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" ( (pointer_expression "**(code **)(*piVar13 + 0x60)" * (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,uVar17)" ( identifier , identifier )))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar17 & 0x7fffffff | 0x80000000" (binary_expression "uVar17 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_f8 = CONCAT13(1,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13(1,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_f8._1_3_)" identifier (argument_list "(1,uStack_f8._1_3_)" ( number_literal , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar20,puVar19)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" else (compound_statement "{\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" { (if_statement "if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;" if (parenthesized_expression "(((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0)" ( (binary_expression "((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0" (binary_expression "((uint)pcVar14 & 0xff) == 0" (parenthesized_expression "((uint)pcVar14 & 0xff)" ( (binary_expression "(uint)pcVar14 & 0xff" (cast_expression "(uint)pcVar14" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) && (binary_expression "pcVar21 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_000e9768;" goto statement_identifier ;)) (expression_statement "pcVar16 = (code *)(piVar13[0x3a] + iVar2);" (assignment_expression "pcVar16 = (code *)(piVar13[0x3a] + iVar2)" identifier = (cast_expression "(code *)(piVar13[0x3a] + iVar2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3a] + iVar2)" ( (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;" if (parenthesized_expression "((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21)" ( (binary_expression "(code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21" (cast_expression "(code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 4)" ( (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 4" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar13[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9cb4;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }" if (parenthesized_expression "((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2))" ( (binary_expression "(*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)" (parenthesized_expression "(*(int *)pcVar16 != 0)" ( (binary_expression "*(int *)pcVar16 != 0" (pointer_expression "*(int *)pcVar16" * (cast_expression "(int *)pcVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar16 != -2)" ( (binary_expression "*(int *)pcVar16 != -2" (pointer_expression "*(int *)pcVar16" * (cast_expression "(int *)pcVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }" { (expression_statement "uVar17 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar17 = *(uint *)(pcStack_100 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcVar3;" (assignment_expression "pcVar4 = pcVar3" identifier = identifier) ;) (labeled_statement "LAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);" statement_identifier : (expression_statement "(**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);" (call_expression "(**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7810)" * (pointer_expression "*(code **)(pcStack_100 + -0x7810)" * (cast_expression "(code **)(pcStack_100 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7810)" ( (binary_expression "pcStack_100 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0)" ( (binary_expression "*(uint *)(pcStack_100 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcStack_100 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_100 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x7fc4)" ( (binary_expression "pcStack_100 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar17 - 0x48c0" identifier - number_literal) ))) ;)) (expression_statement "pcVar3 = pcVar4;" (assignment_expression "pcVar3 = pcVar4" identifier = identifier) ;) })) (expression_statement "*(int *)pcVar16 = -2;" (assignment_expression "*(int *)pcVar16 = -2" (pointer_expression "*(int *)pcVar16" * (cast_expression "(int *)pcVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" identifier = (binary_expression "uStack_f8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar20,puVar19)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000e96e0;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);" (call_expression "(**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7810)" * (pointer_expression "*(code **)(pcStack_100 + -0x7810)" * (cast_expression "(code **)(pcStack_100 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7810)" ( (binary_expression "pcStack_100 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0)" ( (binary_expression "*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcStack_100 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_100 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x7fc4)" ( (binary_expression "pcStack_100 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcStack_100 + -0x77f0) - 0x50e0" (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x5068" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x5098" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x33a0" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "LAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);" statement_identifier : (expression_statement "uVar10 = *(uint *)(pcVar4 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcVar4 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar10 - 0x34dc" identifier - number_literal) ))) ;)) (labeled_statement "LAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x50b0" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "switchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);" statement_identifier : (expression_statement "pcVar16 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar16 = *(code **)(pcVar4 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar25 = FUN_000e9d5c;" (assignment_expression "pcVar25 = FUN_000e9d5c" identifier = identifier) ;) (expression_statement "(*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);" (call_expression "(*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8)" (parenthesized_expression "(*pcVar16)" ( (pointer_expression "*pcVar16" * identifier) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x50c8" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (expression_statement "pcVar14 = pcStack_e8;" (assignment_expression "pcVar14 = pcStack_e8" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_ec;" (assignment_expression "pcVar21 = pcStack_ec" identifier = identifier) ;) (expression_statement "pcVar4 = pcVar16 + 0x3df4e4;" (assignment_expression "pcVar4 = pcVar16 + 0x3df4e4" identifier = (binary_expression "pcVar16 + 0x3df4e4" identifier + number_literal)) ;) (expression_statement "pcStack_134 = pcVar22;" (assignment_expression "pcStack_134 = pcVar22" identifier = identifier) ;) (expression_statement "pcStack_140 = pcVar20;" (assignment_expression "pcStack_140 = pcVar20" identifier = identifier) ;) (expression_statement "uVar17 = (uint)bStack_f1;" (assignment_expression "uVar17 = (uint)bStack_f1" identifier = (cast_expression "(uint)bStack_f1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "piVar7 = piVar5;" (assignment_expression "piVar7 = piVar5" identifier = identifier) ;) (expression_statement "pcVar22 = pcStack_100;" (assignment_expression "pcVar22 = pcStack_100" identifier = identifier) ;) (expression_statement "pcStack_160 = pcVar4;" (assignment_expression "pcStack_160 = pcVar4" identifier = identifier) ;) (expression_statement "pcStack_13c = pcVar15;" (assignment_expression "pcStack_13c = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_138 = pcVar24;" (assignment_expression "pcStack_138 = pcVar24" identifier = identifier) ;) (expression_statement "piStack_130 = piVar13;" (assignment_expression "piStack_130 = piVar13" identifier = identifier) ;) (expression_statement "pcStack_12c = pcVar3;" (assignment_expression "pcStack_12c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_128 = uVar6;" (assignment_expression "uStack_128 = uVar6" identifier = identifier) ;) (expression_statement "puStack_124 = puVar19;" (assignment_expression "puStack_124 = puVar19" identifier = identifier) ;) (expression_statement "pcStack_120 = pcVar23;" (assignment_expression "pcStack_120 = pcVar23" identifier = identifier) ;) (expression_statement "pcStack_11c = pcVar25;" (assignment_expression "pcStack_11c = pcVar25" identifier = identifier) ;) (if_statement "if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }" if (parenthesized_expression "(iStack_104 == 9)" ( (binary_expression "iStack_104 == 9" identifier == number_literal) )) (compound_statement "{\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }" { (expression_statement "pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);" (assignment_expression "pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d7dc8)" * (cast_expression "(code **)(pcVar16 + 0x3d7dc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d7dc8)" ( (binary_expression "pcVar16 + 0x3d7dc8" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_150;" (assignment_expression "pcVar4 = pcStack_150" identifier = identifier) ;) (if_statement "if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }" if (parenthesized_expression "(pcStack_fc != (code *)0x0)" ( (binary_expression "pcStack_fc != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }" { (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar3 = *(code **)(pcVar16 + 0x3d7e00);" (assignment_expression "pcVar3 = *(code **)(pcVar16 + 0x3d7e00)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d7e00)" * (cast_expression "(code **)(pcVar16 + 0x3d7e00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d7e00)" ( (binary_expression "pcVar16 + 0x3d7e00" identifier + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)&uStack_158;" (assignment_expression "pcVar23 = (code *)&uStack_158" identifier = (cast_expression "(code *)&uStack_158" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_158" & identifier))) ;) (expression_statement "puVar19 = (uint *)0xff00;" (assignment_expression "puVar19 = (uint *)0xff00" identifier = (cast_expression "(uint *)0xff00" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);" do (compound_statement "{\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  }" { (if_statement "if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }" { (labeled_statement "LAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);" statement_identifier : (expression_statement "uVar6 = *(uint *)(pcVar22 + 4);" (assignment_expression "uVar6 = *(uint *)(pcVar22 + 4)" identifier = (pointer_expression "*(uint *)(pcVar22 + 4)" * (cast_expression "(uint *)(pcVar22 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 4)" ( (binary_expression "pcVar22 + 4" identifier + number_literal) ))))) ;)) (expression_statement "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);" (assignment_expression "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8)" identifier = (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8)" ( (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8" (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10)" ( (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" ( (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" ( (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) >> number_literal) )))) ;) (if_statement "if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }" if (parenthesized_expression "(pcVar20 < pcStack_f0)" ( (binary_expression "pcVar20 < pcStack_f0" identifier < identifier) )) (compound_statement "{\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }" { (expression_statement "pcVar15 = (code *)((int)pcVar20 * 0x10);" (assignment_expression "pcVar15 = (code *)((int)pcVar20 * 0x10)" identifier = (cast_expression "(code *)((int)pcVar20 * 0x10)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar20 * 0x10)" ( (binary_expression "(int)pcVar20 * 0x10" (cast_expression "(int)pcVar20" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if (pcVar21 == (code *)0x0) goto LAB_000ea38c;" if (parenthesized_expression "(pcVar21 == (code *)0x0)" ( (binary_expression "pcVar21 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ea38c;" goto statement_identifier ;)) (expression_statement "pcVar16 = pcVar21 + (int)pcVar15;" (assignment_expression "pcVar16 = pcVar21 + (int)pcVar15" identifier = (binary_expression "pcVar21 + (int)pcVar15" identifier + (cast_expression "(int)pcVar15" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);" (assignment_expression "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" identifier = (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)(pcVar16 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)(pcVar16 + 0xe) >> 8)" ( (binary_expression "*(ushort *)(pcVar16 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) )))) >> number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }" { (labeled_statement "LAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000ea108;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000ea108;" goto statement_identifier ;))) (expression_statement "uVar10 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea3a8;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;" if (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar5[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ea1b0;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }" else (compound_statement "{\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }" { (if_statement "if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }" { (expression_statement "iVar2 = piVar5[0xc];" (assignment_expression "iVar2 = piVar5[0xc]" identifier = (subscript_expression "piVar5[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_14c = pcVar20;" (assignment_expression "pcStack_14c = pcVar20" identifier = identifier) ;) (expression_statement "pcStack_148 = pcVar15;" (assignment_expression "pcStack_148 = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_144 = pcVar16;" (assignment_expression "pcStack_144 = pcVar16" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5)" identifier = (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" ( (pointer_expression "**(code **)(*piVar5 + 0x6c)" * (pointer_expression "*(code **)(*piVar5 + 0x6c)" * (cast_expression "(code **)(*piVar5 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x6c)" ( (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5)" ( identifier )))) ;) (expression_statement "piVar5[0xc] = iVar2;" (assignment_expression "piVar5[0xc] = iVar2" (subscript_expression "piVar5[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);" (assignment_expression "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7790)" * (pointer_expression "*(code **)(pcStack_160 + -0x7790)" * (cast_expression "(code **)(pcStack_160 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7790)" ( (binary_expression "pcStack_160 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar5,pcStack_14c)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar20 = pcStack_14c;" (assignment_expression "pcVar20 = pcStack_14c" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_148;" (assignment_expression "pcVar15 = pcStack_148" identifier = identifier) ;) (expression_statement "pcVar16 = pcStack_144;" (assignment_expression "pcVar16 = pcStack_144" identifier = identifier) ;) (goto_statement "goto LAB_000ea208;" goto statement_identifier ;) })) (labeled_statement "LAB_000ea108:\n                          cVar1 = pcVar16[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" { (if_statement "if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" if (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcStack_150)" ( (binary_expression "*(code **)(*piVar5 + 0x60) == pcStack_150" (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" { (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea354;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" else (compound_statement "{\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" identifier = (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" ( (pointer_expression "**(code **)(*piVar5 + 0x60)" * (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_158 = CONCAT13(2,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(2,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_158._1_3_)" identifier (argument_list "(2,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,pcVar23)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" else (compound_statement "{\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" { (expression_statement "pcVar15 = pcVar15 + piVar5[0x3a];" (assignment_expression "pcVar15 = pcVar15 + piVar5[0x3a]" identifier = (binary_expression "pcVar15 + piVar5[0x3a]" identifier + (subscript_expression "piVar5[0x3a]" identifier [ number_literal ]))) ;) (if_statement "if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;" if (parenthesized_expression "((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)" ( (binary_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20" (cast_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 4)" ( (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 4" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar5[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea338;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;" if (parenthesized_expression "((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))" ( (binary_expression "(*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2)" (parenthesized_expression "(*(int *)pcVar15 != 0)" ( (binary_expression "*(int *)pcVar15 != 0" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2)" ( (comma_expression "uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2" (assignment_expression "uVar6 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "*(int *)pcVar15 != -2" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal)) ))) )) (goto_statement "goto LAB_000e9f98;" goto statement_identifier ;)) (expression_statement "*(int *)pcVar15 = -2;" (assignment_expression "*(int *)pcVar15 = -2" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,pcVar23)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }" else (compound_statement "{\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }" { (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,pcVar23)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" * (cast_expression "(int *)((int)pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar14 + 0xc)" ( (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" * (cast_expression "(int *)((int)pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar14 + 0xc)" ( (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }" else (compound_statement "{\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }" { (expression_statement "uVar6 = *(uint *)pcVar22;" (assignment_expression "uVar6 = *(uint *)pcVar22" identifier = (pointer_expression "*(uint *)pcVar22" * (cast_expression "(uint *)pcVar22" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_168 = 0;" (assignment_expression "uStack_168 = 0" identifier = number_literal) ;) (expression_statement "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);" (assignment_expression "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000)" identifier = (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000)" ( (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10)" ( (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" ( (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" ( (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);" (assignment_expression "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_160 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_160 + -0x76e0)" * (cast_expression "(code **)(pcStack_160 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x76e0)" ( (binary_expression "pcStack_160 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_f8,piVar5,uStack_108)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000ea0b8;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ea0b8;" goto statement_identifier ;)) (labeled_statement "LAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);" statement_identifier : (expression_statement "uStack_158 = CONCAT13(8,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(8,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_158._1_3_)" identifier (argument_list "(8,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,pcVar23)" ( identifier , identifier ))) ;) }))) (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;) (expression_statement "pcVar22 = pcVar22 + 8;" (assignment_expression "pcVar22 = pcVar22 + 8" identifier = (binary_expression "pcVar22 + 8" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcStack_fc;" (assignment_expression "pcVar4 = pcStack_fc" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_fc != pcVar24)" ( (binary_expression "pcStack_fc != pcVar24" identifier != identifier) )) ;) })) (return_statement "return pcVar4;" return identifier ;) })) (if_statement "if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }" if (parenthesized_expression "(iStack_104 == 4)" ( (binary_expression "iStack_104 == 4" identifier == number_literal) )) (compound_statement "{\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }" { (expression_statement "pcVar24 = *(code **)(pcVar16 + 0x3d7e00);" (assignment_expression "pcVar24 = *(code **)(pcVar16 + 0x3d7e00)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d7e00)" * (cast_expression "(code **)(pcVar16 + 0x3d7e00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d7e00)" ( (binary_expression "pcVar16 + 0x3d7e00" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }" if (parenthesized_expression "(pcStack_fc == (code *)0x0)" ( (binary_expression "pcStack_fc == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  return (code *)0x0;\n                }" { (return_statement "return (code *)0x0;" return (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "pcVar3 = (code *)0x0;" (assignment_expression "pcVar3 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);" (assignment_expression "pcVar23 = *(code **)(pcVar16 + 0x3d7dc8)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d7dc8)" * (cast_expression "(code **)(pcVar16 + 0x3d7dc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d7dc8)" ( (binary_expression "pcVar16 + 0x3d7dc8" identifier + number_literal) ))))) ;) (expression_statement "puVar19 = &uStack_158;" (assignment_expression "puVar19 = &uStack_158" identifier = (pointer_expression "&uStack_158" & identifier)) ;) (labeled_statement "LAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }" statement_identifier : (while_statement "while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }" while (parenthesized_expression "(uVar17 != 0)" ( (binary_expression "uVar17 != 0" identifier != number_literal) )) (compound_statement "{\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }" { (expression_statement "uVar6 = *(uint *)pcVar22;" (assignment_expression "uVar6 = *(uint *)pcVar22" identifier = (pointer_expression "*(uint *)pcVar22" * (cast_expression "(uint *)pcVar22" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_168 = 0;" (assignment_expression "uStack_168 = 0" identifier = number_literal) ;) (expression_statement "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );" (assignment_expression "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        )" identifier = (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        )" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        )" ( (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10)" ( (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" ( (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" ( (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);" (assignment_expression "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_160 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_160 + -0x76e0)" * (cast_expression "(code **)(pcStack_160 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x76e0)" ( (binary_expression "pcStack_160 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_f8,piVar5,uStack_108)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);" statement_identifier : (expression_statement "uStack_158 = CONCAT13(8,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(8,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_158._1_3_)" identifier (argument_list "(8,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar14,puVar19)" ( identifier , identifier ))) ;) (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" identifier = (binary_expression "pcVar3 + 1" identifier + number_literal)) ;) (expression_statement "pcVar22 = pcVar22 + 0xc;" (assignment_expression "pcVar22 = pcVar22 + 0xc" identifier = (binary_expression "pcVar22 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }" if (parenthesized_expression "(pcStack_fc == pcVar3)" ( (binary_expression "pcStack_fc == pcVar3" identifier == identifier) )) (compound_statement "{\n                    return pcStack_fc;\n                  }" { (return_statement "return pcStack_fc;" return identifier ;) })) }))) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (expression_statement "uVar6 = *(uint *)(pcVar22 + 4);" (assignment_expression "uVar6 = *(uint *)(pcVar22 + 4)" identifier = (pointer_expression "*(uint *)(pcVar22 + 4)" * (cast_expression "(uint *)(pcVar22 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 4)" ( (binary_expression "pcVar22 + 4" identifier + number_literal) ))))) ;) (expression_statement "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);" (assignment_expression "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8)" identifier = (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8)" ( (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8" (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" ( (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" ( (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) >> number_literal) )))) ;) (if_statement "if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }" if (parenthesized_expression "(pcStack_f0 <= pcVar20)" ( (binary_expression "pcStack_f0 <= pcVar20" identifier <= identifier) )) (compound_statement "{\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }" { (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar14,puVar19)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;" statement_identifier : (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" identifier = (binary_expression "pcVar3 + 1" identifier + number_literal)) ;)) (expression_statement "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" * (cast_expression "(int *)((int)pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar14 + 0xc)" ( (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" * (cast_expression "(int *)((int)pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar14 + 0xc)" ( (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar22 = pcVar22 + 0xc;" (assignment_expression "pcVar22 = pcVar22 + 0xc" identifier = (binary_expression "pcVar22 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }" if (parenthesized_expression "(pcStack_fc == pcVar3)" ( (binary_expression "pcStack_fc == pcVar3" identifier == identifier) )) (compound_statement "{\n                    return pcStack_fc;\n                  }" { (return_statement "return pcStack_fc;" return identifier ;) })) (goto_statement "goto LAB_000e9e0c;" goto statement_identifier ;) })) (expression_statement "pcVar15 = (code *)((int)pcVar20 * 0x10);" (assignment_expression "pcVar15 = (code *)((int)pcVar20 * 0x10)" identifier = (cast_expression "(code *)((int)pcVar20 * 0x10)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar20 * 0x10)" ( (binary_expression "(int)pcVar20 * 0x10" (cast_expression "(int)pcVar20" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }" if (parenthesized_expression "(pcVar21 != (code *)0x0)" ( (binary_expression "pcVar21 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }" { (expression_statement "pcVar16 = pcVar21 + (int)pcVar15;" (assignment_expression "pcVar16 = pcVar21 + (int)pcVar15" identifier = (binary_expression "pcVar21 + (int)pcVar15" identifier + (cast_expression "(int)pcVar15" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);" (assignment_expression "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" identifier = (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)(pcVar16 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)(pcVar16 + 0xe) >> 8)" ( (binary_expression "*(ushort *)(pcVar16 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) )))) >> number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }" { (labeled_statement "LAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000e9e68;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9e68;" goto statement_identifier ;))) (expression_statement "uVar10 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea3a8;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;" if (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar5[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9f08;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }" else (compound_statement "{\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }" { (if_statement "if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }" { (expression_statement "iVar2 = piVar5[0xc];" (assignment_expression "iVar2 = piVar5[0xc]" identifier = (subscript_expression "piVar5[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_150 = pcVar20;" (assignment_expression "pcStack_150 = pcVar20" identifier = identifier) ;) (expression_statement "pcStack_14c = pcVar15;" (assignment_expression "pcStack_14c = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_148 = pcVar16;" (assignment_expression "pcStack_148 = pcVar16" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5)" identifier = (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" ( (pointer_expression "**(code **)(*piVar5 + 0x6c)" * (pointer_expression "*(code **)(*piVar5 + 0x6c)" * (cast_expression "(code **)(*piVar5 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x6c)" ( (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5)" ( identifier )))) ;) (expression_statement "piVar5[0xc] = iVar2;" (assignment_expression "piVar5[0xc] = iVar2" (subscript_expression "piVar5[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);" (assignment_expression "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7790)" * (pointer_expression "*(code **)(pcStack_160 + -0x7790)" * (cast_expression "(code **)(pcStack_160 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7790)" ( (binary_expression "pcStack_160 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar5,pcStack_150)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar20 = pcStack_150;" (assignment_expression "pcVar20 = pcStack_150" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_14c;" (assignment_expression "pcVar15 = pcStack_14c" identifier = identifier) ;) (expression_statement "pcVar16 = pcStack_148;" (assignment_expression "pcVar16 = pcStack_148" identifier = identifier) ;) (goto_statement "goto LAB_000ea00c;" goto statement_identifier ;) })) (labeled_statement "LAB_000e9e68:\n                    cVar1 = pcVar16[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" { (if_statement "if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcVar23)" ( (binary_expression "*(code **)(*piVar5 + 0x60) == pcVar23" (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea354;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" identifier = (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" ( (pointer_expression "**(code **)(*piVar5 + 0x60)" * (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_158 = CONCAT13(1,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(1,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_158._1_3_)" identifier (argument_list "(1,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar14,puVar19)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" else (compound_statement "{\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" { (expression_statement "pcVar15 = pcVar15 + piVar5[0x3a];" (assignment_expression "pcVar15 = pcVar15 + piVar5[0x3a]" identifier = (binary_expression "pcVar15 + piVar5[0x3a]" identifier + (subscript_expression "piVar5[0x3a]" identifier [ number_literal ]))) ;) (if_statement "if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;" if (parenthesized_expression "((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)" ( (binary_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20" (cast_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 4)" ( (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 4" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar5[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea338;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }" if (parenthesized_expression "((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2))" ( (binary_expression "(*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)" (parenthesized_expression "(*(int *)pcVar15 != 0)" ( (binary_expression "*(int *)pcVar15 != 0" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar15 != -2)" ( (binary_expression "*(int *)pcVar15 != -2" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }" { (expression_statement "uVar6 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar6 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);" statement_identifier : (expression_statement "(**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);" (call_expression "(**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7810)" * (pointer_expression "*(code **)(pcStack_160 + -0x7810)" * (cast_expression "(code **)(pcStack_160 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7810)" ( (binary_expression "pcStack_160 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0)" ( (binary_expression "*(uint *)(pcStack_160 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcStack_160 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_160 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x7fc4)" ( (binary_expression "pcStack_160 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar6 - 0x48c0" identifier - number_literal) ))) ;)) })) (expression_statement "*(int *)pcVar15 = -2;" (assignment_expression "*(int *)pcVar15 = -2" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar14,puVar19)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000e9df0;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);" (call_expression "(**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7810)" * (pointer_expression "*(code **)(pcStack_160 + -0x7810)" * (cast_expression "(code **)(pcStack_160 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7810)" ( (binary_expression "pcStack_160 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8)" ( (binary_expression "*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcStack_160 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_160 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x7fc4)" ( (binary_expression "pcStack_160 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcStack_160 + -0x77f0) - 0x48d8" (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x489c" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "LAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x33a0" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x4860" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;" statement_identifier : (expression_statement "uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;" (assignment_expression "uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878" identifier = (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x4878" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal)) ;)) (expression_statement "(**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);" (call_expression "(**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);" statement_identifier : (expression_statement "pcVar25 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar25 = *(code **)(pcVar4 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar26 = FUN_000ea3c0;" (assignment_expression "pcVar26 = FUN_000ea3c0" identifier = identifier) ;) (expression_statement "(*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);" (call_expression "(*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar10 - 0x34dc" identifier - number_literal) ))) ;) (expression_statement "pcVar16 = pcStack_148;" (assignment_expression "pcVar16 = pcStack_148" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_14c;" (assignment_expression "pcVar15 = pcStack_14c" identifier = identifier) ;) (expression_statement "pcVar20 = pcStack_164;" (assignment_expression "pcVar20 = pcStack_164" identifier = identifier) ;) (expression_statement "pcVar4 = pcVar25 + 0x3dee80;" (assignment_expression "pcVar4 = pcVar25 + 0x3dee80" identifier = (binary_expression "pcVar25 + 0x3dee80" identifier + number_literal)) ;) (expression_statement "pcStack_194 = pcVar21;" (assignment_expression "pcStack_194 = pcVar21" identifier = identifier) ;) (expression_statement "uStack_1a0 = (uint)pcVar14;" (assignment_expression "uStack_1a0 = (uint)pcVar14" identifier = (cast_expression "(uint)pcVar14" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "puVar18 = (uint *)(uint)bStack_151;" (assignment_expression "puVar18 = (uint *)(uint)bStack_151" identifier = (cast_expression "(uint *)(uint)bStack_151" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)bStack_151" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "piVar13 = piVar7;" (assignment_expression "piVar13 = piVar7" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_160;" (assignment_expression "pcVar21 = pcStack_160" identifier = identifier) ;) (expression_statement "pcStack_1c8 = pcVar4;" (assignment_expression "pcStack_1c8 = pcVar4" identifier = identifier) ;) (expression_statement "pcStack_19c = pcVar22;" (assignment_expression "pcStack_19c = pcVar22" identifier = identifier) ;) (expression_statement "pcStack_198 = pcVar24;" (assignment_expression "pcStack_198 = pcVar24" identifier = identifier) ;) (expression_statement "piStack_190 = piVar5;" (assignment_expression "piStack_190 = piVar5" identifier = identifier) ;) (expression_statement "pcStack_18c = pcVar3;" (assignment_expression "pcStack_18c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_188 = uVar17;" (assignment_expression "uStack_188 = uVar17" identifier = identifier) ;) (expression_statement "puStack_184 = puVar19;" (assignment_expression "puStack_184 = puVar19" identifier = identifier) ;) (expression_statement "pcStack_180 = pcVar23;" (assignment_expression "pcStack_180 = pcVar23" identifier = identifier) ;) (expression_statement "pcStack_17c = pcVar26;" (assignment_expression "pcStack_17c = pcVar26" identifier = identifier) ;) (if_statement "if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }" if (parenthesized_expression "(pcStack_164 == (code *)0x9)" ( (binary_expression "pcStack_164 == (code *)0x9" identifier == (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }" { (expression_statement "pcVar4 = *(code **)(pcVar25 + 0x3d768c);" (assignment_expression "pcVar4 = *(code **)(pcVar25 + 0x3d768c)" identifier = (pointer_expression "*(code **)(pcVar25 + 0x3d768c)" * (cast_expression "(code **)(pcVar25 + 0x3d768c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d768c)" ( (binary_expression "pcVar25 + 0x3d768c" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }" if (parenthesized_expression "(pcStack_15c != (code *)0x0)" ( (binary_expression "pcStack_15c != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }" { (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcVar25 + 0x3d7764);" (assignment_expression "pcVar23 = *(code **)(pcVar25 + 0x3d7764)" identifier = (pointer_expression "*(code **)(pcVar25 + 0x3d7764)" * (cast_expression "(code **)(pcVar25 + 0x3d7764)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d7764)" ( (binary_expression "pcVar25 + 0x3d7764" identifier + number_literal) ))))) ;) (expression_statement "pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;" (assignment_expression "pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864" identifier = (binary_expression "*(code **)(pcVar25 + 0x3d768c) + 0x1864" (pointer_expression "*(code **)(pcVar25 + 0x3d768c)" * (cast_expression "(code **)(pcVar25 + 0x3d768c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d768c)" ( (binary_expression "pcVar25 + 0x3d768c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);" (assignment_expression "puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c)" identifier = (cast_expression "(uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c)" ( (binary_expression "*(int *)(pcVar25 + 0x3d6ebc) + 0x546c" (pointer_expression "*(int *)(pcVar25 + 0x3d6ebc)" * (cast_expression "(int *)(pcVar25 + 0x3d6ebc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x3d6ebc)" ( (binary_expression "pcVar25 + 0x3d6ebc" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);" do (compound_statement "{\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  }" { (if_statement "if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }" if (parenthesized_expression "(puVar18 == (uint *)0x0)" ( (binary_expression "puVar18 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }" { (labeled_statement "LAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);" statement_identifier : (expression_statement "uVar17 = *(uint *)(pcVar21 + 4);" (assignment_expression "uVar17 = *(uint *)(pcVar21 + 4)" identifier = (pointer_expression "*(uint *)(pcVar21 + 4)" * (cast_expression "(uint *)(pcVar21 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 4)" ( (binary_expression "pcVar21 + 4" identifier + number_literal) ))))) ;)) (expression_statement "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);" (assignment_expression "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000)" identifier = (cast_expression "(code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000)" ( (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10)" ( (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" ( (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" ( (binary_expression "uVar17 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" ( (binary_expression "uVar17 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" ( (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" ( (binary_expression "uVar17 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "pcVar22 = (code *)((uint)pcVar3 >> 8);" (assignment_expression "pcVar22 = (code *)((uint)pcVar3 >> 8)" identifier = (cast_expression "(code *)((uint)pcVar3 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pcVar3 >> 8)" ( (binary_expression "(uint)pcVar3 >> 8" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" if (parenthesized_expression "(pcVar22 < pcStack_150)" ( (binary_expression "pcVar22 < pcStack_150" identifier < identifier) )) (compound_statement "{\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" { (expression_statement "iVar2 = (int)pcVar22 * 0x10;" (assignment_expression "iVar2 = (int)pcVar22 * 0x10" identifier = (binary_expression "(int)pcVar22 * 0x10" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (pcVar15 == (code *)0x0) goto LAB_000eaad4;" if (parenthesized_expression "(pcVar15 == (code *)0x0)" ( (binary_expression "pcVar15 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eaad4;" goto statement_identifier ;)) (expression_statement "pcVar14 = pcVar15 + iVar2;" (assignment_expression "pcVar14 = pcVar15 + iVar2" identifier = (binary_expression "pcVar15 + iVar2" identifier + identifier)) ;) (expression_statement "pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));" (assignment_expression "pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8))" identifier = (cast_expression "(code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8))" ( (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)(pcVar14 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" * (cast_expression "(ushort *)(pcVar14 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe)" ( (binary_expression "pcVar14 + 0xe" identifier + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)(pcVar14 + 0xe) >> 8)" ( (binary_expression "*(ushort *)(pcVar14 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" * (cast_expression "(ushort *)(pcVar14 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe)" ( (binary_expression "pcVar14 + 0xe" identifier + number_literal) )))) >> number_literal) )))) )))) ;) (if_statement "if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }" if (parenthesized_expression "(pcVar25 < (code *)0xff00)" ( (binary_expression "pcVar25 < (code *)0xff00" identifier < (cast_expression "(code *)0xff00" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }" { (labeled_statement "LAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;" statement_identifier : (if_statement "if (pcVar25 == (code *)0x0) goto LAB_000ea790;" if (parenthesized_expression "(pcVar25 == (code *)0x0)" ( (binary_expression "pcVar25 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ea790;" goto statement_identifier ;))) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;" if (parenthesized_expression "((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)" ( (binary_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaab8;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;" if (parenthesized_expression "(*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0)" ( (binary_expression "*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + (int)pcVar25 * 4)" * (cast_expression "(int *)(piVar7[0xe] + (int)pcVar25 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + (int)pcVar25 * 4)" ( (binary_expression "piVar7[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ea7b4;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" identifier = (subscript_expression "pcVar14[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }" else (compound_statement "{\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }" { (if_statement "if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }" if (parenthesized_expression "(pcVar25 == (code *)0xffff)" ( (binary_expression "pcVar25 == (code *)0xffff" identifier == (cast_expression "(code *)0xffff" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }" { (expression_statement "iVar11 = piVar7[0xc];" (assignment_expression "iVar11 = piVar7[0xc]" identifier = (subscript_expression "piVar7[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_1b4 = pcVar3;" (assignment_expression "pcStack_1b4 = pcVar3" identifier = identifier) ;) (expression_statement "pcStack_1b0 = pcVar22;" (assignment_expression "pcStack_1b0 = pcVar22" identifier = identifier) ;) (expression_statement "iStack_1ac = iVar2;" (assignment_expression "iStack_1ac = iVar2" identifier = identifier) ;) (expression_statement "pcStack_1a8 = pcVar14;" (assignment_expression "pcStack_1a8 = pcVar14" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }" { (expression_statement "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);" (assignment_expression "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0)" identifier = (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" ( (pointer_expression "**(code **)(*piVar7 + 0x6c)" * (pointer_expression "*(code **)(*piVar7 + 0x6c)" * (cast_expression "(code **)(*piVar7 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x6c)" ( (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) )))) ;) (expression_statement "piVar7[0xc] = iVar11;" (assignment_expression "piVar7[0xc] = iVar11" (subscript_expression "piVar7[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (uint)pcStack_1b4;" (assignment_expression "uVar17 = (uint)pcStack_1b4" identifier = (cast_expression "(uint)pcStack_1b4" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_1b4 = pcStack_1b0;" (assignment_expression "pcStack_1b4 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_1b0;" (assignment_expression "pcVar4 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcStack_1b0 = (code *)uVar17;" (assignment_expression "pcStack_1b0 = (code *)uVar17" identifier = (cast_expression "(code *)uVar17" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);" (assignment_expression "pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4)" identifier = (cast_expression "(code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7790)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7790)" * (cast_expression "(code **)(pcStack_1c8 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7790)" ( (binary_expression "pcStack_1c8 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar7,pcVar4)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pcVar3 = pcStack_1b0;" (assignment_expression "pcVar3 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar22 = pcStack_1b4;" (assignment_expression "pcVar22 = pcStack_1b4" identifier = identifier) ;) (expression_statement "iVar2 = iStack_1ac;" (assignment_expression "iVar2 = iStack_1ac" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_1a8;" (assignment_expression "pcVar14 = pcStack_1a8" identifier = identifier) ;) (goto_statement "goto LAB_000ea888;" goto statement_identifier ;) })) (labeled_statement "LAB_000ea790:\n                          cVar1 = pcVar14[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" identifier = (subscript_expression "pcVar14[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "uVar17 = (uint)pcVar3 & 0xff;" (assignment_expression "uVar17 = (uint)pcVar3 & 0xff" identifier = (binary_expression "(uint)pcVar3 & 0xff" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }" if (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" ( (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }" { (if_statement "if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;" if (parenthesized_expression "(pcVar22 == (code *)0x0 && uVar17 == 0)" ( (binary_expression "pcVar22 == (code *)0x0 && uVar17 == 0" (binary_expression "pcVar22 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (binary_expression "uVar17 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_000ea7b4;" goto statement_identifier ;)) (expression_statement "piVar5 = (int *)(piVar7[0x3a] + iVar2);" (assignment_expression "piVar5 = (int *)(piVar7[0x3a] + iVar2)" identifier = (cast_expression "(int *)(piVar7[0x3a] + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3a] + iVar2)" ( (binary_expression "piVar7[0x3a] + iVar2" (subscript_expression "piVar7[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }" if (parenthesized_expression "(pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4))" ( (binary_expression "pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" identifier < (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) >> number_literal) )))) )) (compound_statement "{\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }" { (expression_statement "iVar2 = *piVar5;" (assignment_expression "iVar2 = *piVar5" identifier = (pointer_expression "*piVar5" * identifier)) ;) (if_statement "if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }" { (expression_statement "iVar11 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_1c8 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = (code *)0x9;" (assignment_expression "pcVar4 = (code *)0x9" identifier = (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 != -2) goto LAB_000ea5b0;" if (parenthesized_expression "(iVar2 != -2)" ( (binary_expression "iVar2 != -2" identifier != number_literal) )) (goto_statement "goto LAB_000ea5b0;" goto statement_identifier ;)) })) (expression_statement "*piVar5 = -2;" (assignment_expression "*piVar5 = -2" (pointer_expression "*piVar5" * identifier) = number_literal) ;) (goto_statement "goto LAB_000ea704;" goto statement_identifier ;) })) (goto_statement "goto LAB_000eaa64;" goto statement_identifier ;) })) (if_statement "if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }" if (parenthesized_expression "(uVar17 != 4)" ( (binary_expression "uVar17 != 4" identifier != number_literal) )) (compound_statement "{\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }" { (expression_statement "pcStack_1b4 = pcVar25;" (assignment_expression "pcStack_1b4 = pcVar25" identifier = identifier) ;) (expression_statement "uVar17 = (*pcStack_1b8)(uVar17,piVar7);" (assignment_expression "uVar17 = (*pcStack_1b8)(uVar17,piVar7)" identifier = (call_expression "(*pcStack_1b8)(uVar17,piVar7)" (parenthesized_expression "(*pcStack_1b8)" ( (pointer_expression "*pcStack_1b8" * identifier) )) (argument_list "(uVar17,piVar7)" ( identifier , identifier )))) ;) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" if (parenthesized_expression "(uVar17 < 9)" ( (binary_expression "uVar17 < 9" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" { comment comment (expression_statement "pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();" (assignment_expression "pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))()" identifier = (cast_expression "(code *)(*(pcStack_1c8 + puVar19[uVar17]))()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(pcStack_1c8 + puVar19[uVar17]))()" (parenthesized_expression "(*(pcStack_1c8 + puVar19[uVar17]))" ( (pointer_expression "*(pcStack_1c8 + puVar19[uVar17])" * (parenthesized_expression "(pcStack_1c8 + puVar19[uVar17])" ( (binary_expression "pcStack_1c8 + puVar19[uVar17]" identifier + (subscript_expression "puVar19[uVar17]" identifier [ identifier ])) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (goto_statement "goto switchD_000ea8f8_caseD_3;" goto statement_identifier ;) })) (if_statement "if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }" if (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == pcVar23)" ( (binary_expression "*(code **)(*piVar7 + 0x60) == pcVar23" (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }" { (if_statement "if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;" if (parenthesized_expression "((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)" ( (binary_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaa9c;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4)" identifier = (pointer_expression "*(int *)(piVar7[0xe] + (int)pcVar25 * 4)" * (cast_expression "(int *)(piVar7[0xe] + (int)pcVar25 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + (int)pcVar25 * 4)" ( (binary_expression "piVar7[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))))) ;) (expression_statement "pcStack_1b4 = pcVar20;" (assignment_expression "pcStack_1b4 = pcVar20" identifier = identifier) ;) }) (else_clause "else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }" else (compound_statement "{\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }" { (expression_statement "pcStack_1b4 = pcVar20;" (assignment_expression "pcStack_1b4 = pcVar20" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25)" identifier = (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,pcVar25)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" ( (pointer_expression "**(code **)(*piVar7 + 0x60)" * (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,pcVar25)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);" (assignment_expression "pcVar4 = *(code **)(pcStack_1c8 + -0x76e4)" identifier = (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e4)" ( (binary_expression "pcStack_1c8 + -0x76e4" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_)" identifier (argument_list "((char)pcStack_1b4,uStack_1c0._1_3_)" ( (cast_expression "(char)pcStack_1b4" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar4)(pcVar16,&uStack_1c0);" (call_expression "(*pcVar4)(pcVar16,&uStack_1c0)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pcVar16,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) ))) ;) (if_statement "if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;" if (parenthesized_expression "(pcStack_1b4 == (code *)&DAT_00000008)" ( (binary_expression "pcStack_1b4 == (code *)&DAT_00000008" identifier == (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000ea724;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar16 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) ))))) ;) }) (else_clause "else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" else (compound_statement "{\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" { (labeled_statement "LAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;" statement_identifier : (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" identifier = (binary_expression "uStack_1c0 & 0xffffff" identifier & number_literal)) ;)) (expression_statement "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e4)" ( (binary_expression "pcStack_1c8 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pcVar16,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) ))) ;) (expression_statement "iVar2 = *(int *)(pcVar16 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) ))))) ;) }))) (expression_statement "*(int *)(pcVar16 + 0xc) = iVar2 + 1;" (assignment_expression "*(int *)(pcVar16 + 0xc) = iVar2 + 1" (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }" else (compound_statement "{\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }" { (expression_statement "uVar17 = *(uint *)pcVar21;" (assignment_expression "uVar17 = *(uint *)pcVar21" identifier = (pointer_expression "*(uint *)pcVar21" * (cast_expression "(uint *)pcVar21" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_1d0 = 0;" (assignment_expression "uStack_1d0 = 0" identifier = number_literal) ;) (expression_statement "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" ( (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" ( (binary_expression "uVar17 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" ( (binary_expression "uVar17 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" ( (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" ( (binary_expression "uVar17 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);" (assignment_expression "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" identifier = (call_expression "(**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e0)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e0)" ( (binary_expression "pcStack_1c8 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_158,piVar7,uStack_168)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000ea73c;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ea73c;" goto statement_identifier ;)) (labeled_statement "LAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);" statement_identifier : (expression_statement "uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_1c0._1_3_)" identifier (argument_list "(8,uStack_1c0._1_3_)" ( number_literal , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e4)" ( (binary_expression "pcStack_1c8 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pcVar16,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) ))) ;) }))) (labeled_statement "LAB_000ea724:\n                    pcVar24 = pcVar24 + 1;" statement_identifier : (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;)) (expression_statement "pcVar21 = pcVar21 + 8;" (assignment_expression "pcVar21 = pcVar21 + 8" identifier = (binary_expression "pcVar21 + 8" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcStack_15c;" (assignment_expression "pcVar4 = pcStack_15c" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_15c != pcVar24)" ( (binary_expression "pcStack_15c != pcVar24" identifier != identifier) )) ;) })) (return_statement "return pcVar4;" return identifier ;) })) (if_statement "if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }" if (parenthesized_expression "(pcStack_164 == (code *)&DAT_00000004)" ( (binary_expression "pcStack_164 == (code *)&DAT_00000004" identifier == (cast_expression "(code *)&DAT_00000004" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }" { (expression_statement "pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);" (assignment_expression "pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764)" identifier = (pointer_expression "*(code **)(pcVar25 + 0x3d7764)" * (cast_expression "(code **)(pcVar25 + 0x3d7764)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d7764)" ( (binary_expression "pcVar25 + 0x3d7764" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }" if (parenthesized_expression "(pcStack_15c == (code *)0x0)" ( (binary_expression "pcStack_15c == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  return pcStack_1b8;\n                }" { (return_statement "return pcStack_1b8;" return identifier ;) })) (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar24 = *(code **)(pcVar25 + 0x3d779c);" (assignment_expression "pcVar24 = *(code **)(pcVar25 + 0x3d779c)" identifier = (pointer_expression "*(code **)(pcVar25 + 0x3d779c)" * (cast_expression "(code **)(pcVar25 + 0x3d779c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d779c)" ( (binary_expression "pcVar25 + 0x3d779c" identifier + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)&DAT_00000008;" (assignment_expression "pcVar23 = (code *)&DAT_00000008" identifier = (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) ;) (expression_statement "puVar19 = &uStack_1c0;" (assignment_expression "puVar19 = &uStack_1c0" identifier = (pointer_expression "&uStack_1c0" & identifier)) ;) (labeled_statement "LAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }" statement_identifier : (while_statement "while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }" while (parenthesized_expression "(puVar18 != (uint *)0x0)" ( (binary_expression "puVar18 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }" { (expression_statement "uVar17 = *(uint *)pcVar21;" (assignment_expression "uVar17 = *(uint *)pcVar21" identifier = (pointer_expression "*(uint *)pcVar21" * (cast_expression "(uint *)pcVar21" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_1d0 = 0;" (assignment_expression "uStack_1d0 = 0" identifier = number_literal) ;) (expression_statement "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" ( (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" ( (binary_expression "uVar17 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" ( (binary_expression "uVar17 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" ( (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" ( (binary_expression "uVar17 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);" (assignment_expression "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" identifier = (call_expression "(**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e0)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e0)" ( (binary_expression "pcStack_1c8 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_158,piVar7,uStack_168)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);" statement_identifier : (expression_statement "uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13((char)pcVar23,uStack_1c0._1_3_)" identifier (argument_list "((char)pcVar23,uStack_1c0._1_3_)" ( (cast_expression "(char)pcVar23" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar16,puVar19)" ( identifier , identifier ))) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar21 = pcVar21 + 0xc;" (assignment_expression "pcVar21 = pcVar21 + 0xc" identifier = (binary_expression "pcVar21 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }" if (parenthesized_expression "(pcStack_15c == pcVar20)" ( (binary_expression "pcStack_15c == pcVar20" identifier == identifier) )) (compound_statement "{\n                    return pcStack_15c;\n                  }" { (return_statement "return pcStack_15c;" return identifier ;) })) }))) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (expression_statement "uVar17 = *(uint *)(pcVar21 + 4);" (assignment_expression "uVar17 = *(uint *)(pcVar21 + 4)" identifier = (pointer_expression "*(uint *)(pcVar21 + 4)" * (cast_expression "(uint *)(pcVar21 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 4)" ( (binary_expression "pcVar21 + 4" identifier + number_literal) ))))) ;) (expression_statement "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);" (assignment_expression "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" ( (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" ( (binary_expression "uVar17 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" ( (binary_expression "uVar17 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" ( (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" ( (binary_expression "uVar17 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "pcVar22 = (code *)((uint)pcVar3 >> 8);" (assignment_expression "pcVar22 = (code *)((uint)pcVar3 >> 8)" identifier = (cast_expression "(code *)((uint)pcVar3 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pcVar3 >> 8)" ( (binary_expression "(uint)pcVar3 >> 8" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }" if (parenthesized_expression "(pcStack_150 <= pcVar22)" ( (binary_expression "pcStack_150 <= pcVar22" identifier <= identifier) )) (compound_statement "{\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }" { (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" identifier = (binary_expression "uStack_1c0 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar16,puVar19)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;" statement_identifier : (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;)) (expression_statement "*(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;" (assignment_expression "*(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1" (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(pcVar16 + 0xc) + 1" (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar21 = pcVar21 + 0xc;" (assignment_expression "pcVar21 = pcVar21 + 0xc" identifier = (binary_expression "pcVar21 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }" if (parenthesized_expression "(pcStack_15c == pcVar20)" ( (binary_expression "pcStack_15c == pcVar20" identifier == identifier) )) (compound_statement "{\n                    return pcStack_15c;\n                  }" { (return_statement "return pcStack_15c;" return identifier ;) })) (goto_statement "goto LAB_000ea478;" goto statement_identifier ;) })) (expression_statement "iVar2 = (int)pcVar22 * 0x10;" (assignment_expression "iVar2 = (int)pcVar22 * 0x10" identifier = (binary_expression "(int)pcVar22 * 0x10" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }" if (parenthesized_expression "(pcVar15 != (code *)0x0)" ( (binary_expression "pcVar15 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }" { (expression_statement "pcVar14 = pcVar15 + iVar2;" (assignment_expression "pcVar14 = pcVar15 + iVar2" identifier = (binary_expression "pcVar15 + iVar2" identifier + identifier)) ;) (expression_statement "uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);" (assignment_expression "uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" identifier = (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)(pcVar14 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" * (cast_expression "(ushort *)(pcVar14 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe)" ( (binary_expression "pcVar14 + 0xe" identifier + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)(pcVar14 + 0xe) >> 8)" ( (binary_expression "*(ushort *)(pcVar14 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" * (cast_expression "(ushort *)(pcVar14 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe)" ( (binary_expression "pcVar14 + 0xe" identifier + number_literal) )))) >> number_literal) ))))) ;) (if_statement "if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }" if (parenthesized_expression "(uVar17 < 0xff00)" ( (binary_expression "uVar17 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }" { (labeled_statement "LAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;" statement_identifier : (if_statement "if (uVar17 == 0) goto LAB_000ea4d4;" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000ea4d4;" goto statement_identifier ;))) (expression_statement "iVar11 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_1c8 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaabc;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;" if (parenthesized_expression "(*(int *)(piVar7[0xe] + uVar17 * 4) == 0)" ( (binary_expression "*(int *)(piVar7[0xe] + uVar17 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar17 * 4)" ( (binary_expression "piVar7[0xe] + uVar17 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ea4f4;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" identifier = (subscript_expression "pcVar14[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }" else (compound_statement "{\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }" { (if_statement "if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }" if (parenthesized_expression "(uVar17 == 0xffff)" ( (binary_expression "uVar17 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }" { (expression_statement "iVar11 = piVar7[0xc];" (assignment_expression "iVar11 = piVar7[0xc]" identifier = (subscript_expression "piVar7[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_1b4 = pcVar3;" (assignment_expression "pcStack_1b4 = pcVar3" identifier = identifier) ;) (expression_statement "pcStack_1b0 = pcVar22;" (assignment_expression "pcStack_1b0 = pcVar22" identifier = identifier) ;) (expression_statement "iStack_1ac = iVar2;" (assignment_expression "iStack_1ac = iVar2" identifier = identifier) ;) (expression_statement "pcStack_1a8 = pcVar14;" (assignment_expression "pcStack_1a8 = pcVar14" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }" { (expression_statement "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);" (assignment_expression "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7)" identifier = (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" ( (pointer_expression "**(code **)(*piVar7 + 0x6c)" * (pointer_expression "*(code **)(*piVar7 + 0x6c)" * (cast_expression "(code **)(*piVar7 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x6c)" ( (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7)" ( identifier )))) ;) (expression_statement "piVar7[0xc] = iVar11;" (assignment_expression "piVar7[0xc] = iVar11" (subscript_expression "piVar7[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (uint)pcStack_1b4;" (assignment_expression "uVar17 = (uint)pcStack_1b4" identifier = (cast_expression "(uint)pcStack_1b4" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_1b4 = pcStack_1b0;" (assignment_expression "pcStack_1b4 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_1b0;" (assignment_expression "pcVar4 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcStack_1b0 = (code *)uVar17;" (assignment_expression "pcStack_1b0 = (code *)uVar17" identifier = (cast_expression "(code *)uVar17" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);" (assignment_expression "uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4)" identifier = (call_expression "(**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7790)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7790)" * (cast_expression "(code **)(pcStack_1c8 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7790)" ( (binary_expression "pcStack_1c8 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar7,pcVar4)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar3 = pcStack_1b0;" (assignment_expression "pcVar3 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar22 = pcStack_1b4;" (assignment_expression "pcVar22 = pcStack_1b4" identifier = identifier) ;) (expression_statement "iVar2 = iStack_1ac;" (assignment_expression "iVar2 = iStack_1ac" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_1a8;" (assignment_expression "pcVar14 = pcStack_1a8" identifier = identifier) ;) (goto_statement "goto LAB_000ea62c;" goto statement_identifier ;) })) (labeled_statement "LAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" identifier = (subscript_expression "pcVar14[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" { (if_statement "if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == pcStack_1b8)" ( (binary_expression "*(code **)(*piVar7 + 0x60) == pcStack_1b8" (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaa9c;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4)" identifier = (pointer_expression "*(int *)(piVar7[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar17 * 4)" ( (binary_expression "piVar7[0xe] + uVar17 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17)" identifier = (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,uVar17)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" ( (pointer_expression "**(code **)(*piVar7 + 0x60)" * (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,uVar17)" ( identifier , identifier )))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar17 & 0x7fffffff | 0x80000000" (binary_expression "uVar17 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_1c0._1_3_)" identifier (argument_list "(1,uStack_1c0._1_3_)" ( number_literal , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar16,puVar19)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" else (compound_statement "{\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" { (if_statement "if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;" if (parenthesized_expression "(((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0)" ( (binary_expression "((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0" (binary_expression "((uint)pcVar3 & 0xff) == 0" (parenthesized_expression "((uint)pcVar3 & 0xff)" ( (binary_expression "(uint)pcVar3 & 0xff" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) && (binary_expression "pcVar22 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_000ea4f4;" goto statement_identifier ;)) (expression_statement "pcVar14 = (code *)(piVar7[0x3a] + iVar2);" (assignment_expression "pcVar14 = (code *)(piVar7[0x3a] + iVar2)" identifier = (cast_expression "(code *)(piVar7[0x3a] + iVar2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3a] + iVar2)" ( (binary_expression "piVar7[0x3a] + iVar2" (subscript_expression "piVar7[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;" if (parenthesized_expression "((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22)" ( (binary_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22" (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaa64;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }" if (parenthesized_expression "((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2))" ( (binary_expression "(*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)" (parenthesized_expression "(*(int *)pcVar14 != 0)" ( (binary_expression "*(int *)pcVar14 != 0" (pointer_expression "*(int *)pcVar14" * (cast_expression "(int *)pcVar14" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar14 != -2)" ( (binary_expression "*(int *)pcVar14 != -2" (pointer_expression "*(int *)pcVar14" * (cast_expression "(int *)pcVar14" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }" { (expression_statement "iVar11 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_1c8 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcVar20;" (assignment_expression "pcVar4 = pcVar20" identifier = identifier) ;) (labeled_statement "LAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);" statement_identifier : (expression_statement "(**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7810)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7810)" * (cast_expression "(code **)(pcStack_1c8 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7810)" ( (binary_expression "pcStack_1c8 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0)" ( (binary_expression "*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_1c8 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1c8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x7fc4)" ( (binary_expression "pcStack_1c8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar11 + -0x48c0" identifier + number_literal) ))) ;)) (expression_statement "pcVar20 = pcVar4;" (assignment_expression "pcVar20 = pcVar4" identifier = identifier) ;) })) (expression_statement "*(int *)pcVar14 = -2;" (assignment_expression "*(int *)pcVar14 = -2" (pointer_expression "*(int *)pcVar14" * (cast_expression "(int *)pcVar14" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" identifier = (binary_expression "uStack_1c0 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar16,puVar19)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000ea45c;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);" (call_expression "(**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7810)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7810)" * (cast_expression "(code **)(pcStack_1c8 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7810)" ( (binary_expression "pcStack_1c8 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938)" ( (binary_expression "*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_1c8 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1c8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x7fc4)" ( (binary_expression "pcStack_1c8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_1c8 + -0x77f0) + -0x4938" (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x489c" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x48f0" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);" statement_identifier : (expression_statement "iVar11 = *(int *)(pcVar4 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcVar4 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar11 + -0x34dc" identifier + number_literal) ))) ;)) (labeled_statement "LAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4908" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "switchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);" statement_identifier : (expression_statement "pcVar14 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar14 = *(code **)(pcVar4 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar25 = FUN_000eab0c;" (assignment_expression "pcVar25 = FUN_000eab0c" identifier = identifier) ;) (expression_statement "(*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);" (call_expression "(*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4920" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar22 = pcStack_1b0;" (assignment_expression "pcVar22 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar3 = pcStack_1b4;" (assignment_expression "pcVar3 = pcStack_1b4" identifier = identifier) ;) (expression_statement "pcVar4 = pcVar14 + 0x3de734;" (assignment_expression "pcVar4 = pcVar14 + 0x3de734" identifier = (binary_expression "pcVar14 + 0x3de734" identifier + number_literal)) ;) (expression_statement "pcStack_1fc = pcVar15;" (assignment_expression "pcStack_1fc = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_208 = pcVar16;" (assignment_expression "pcStack_208 = pcVar16" identifier = identifier) ;) (expression_statement "uVar17 = (uint)bStack_1b9;" (assignment_expression "uVar17 = (uint)bStack_1b9" identifier = (cast_expression "(uint)bStack_1b9" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "piVar5 = piVar13;" (assignment_expression "piVar5 = piVar13" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_1c8;" (assignment_expression "pcVar15 = pcStack_1c8" identifier = identifier) ;) (expression_statement "pcStack_228 = pcVar4;" (assignment_expression "pcStack_228 = pcVar4" identifier = identifier) ;) (expression_statement "pcStack_204 = pcVar21;" (assignment_expression "pcStack_204 = pcVar21" identifier = identifier) ;) (expression_statement "pcStack_200 = pcVar24;" (assignment_expression "pcStack_200 = pcVar24" identifier = identifier) ;) (expression_statement "piStack_1f8 = piVar7;" (assignment_expression "piStack_1f8 = piVar7" identifier = identifier) ;) (expression_statement "pcStack_1f4 = pcVar20;" (assignment_expression "pcStack_1f4 = pcVar20" identifier = identifier) ;) (expression_statement "puStack_1f0 = puVar18;" (assignment_expression "puStack_1f0 = puVar18" identifier = identifier) ;) (expression_statement "puStack_1ec = puVar19;" (assignment_expression "puStack_1ec = puVar19" identifier = identifier) ;) (expression_statement "pcStack_1e8 = pcVar23;" (assignment_expression "pcStack_1e8 = pcVar23" identifier = identifier) ;) (expression_statement "pcStack_1e4 = pcVar25;" (assignment_expression "pcStack_1e4 = pcVar25" identifier = identifier) ;) (if_statement "if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }" if (parenthesized_expression "(iStack_1cc == 9)" ( (binary_expression "iStack_1cc == 9" identifier == number_literal) )) (compound_statement "{\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }" { (expression_statement "pcStack_218 = *(code **)(pcVar14 + 0x3d7018);" (assignment_expression "pcStack_218 = *(code **)(pcVar14 + 0x3d7018)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x3d7018)" * (cast_expression "(code **)(pcVar14 + 0x3d7018)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x3d7018)" ( (binary_expression "pcVar14 + 0x3d7018" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_218;" (assignment_expression "pcVar4 = pcStack_218" identifier = identifier) ;) (if_statement "if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }" if (parenthesized_expression "(pcStack_1c4 != (code *)0x0)" ( (binary_expression "pcStack_1c4 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }" { (expression_statement "pcVar20 = *(code **)(pcVar14 + 0x3d7050);" (assignment_expression "pcVar20 = *(code **)(pcVar14 + 0x3d7050)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x3d7050)" * (cast_expression "(code **)(pcVar14 + 0x3d7050)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x3d7050)" ( (binary_expression "pcVar14 + 0x3d7050" identifier + number_literal) ))))) ;) (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar18 = &uStack_220;" (assignment_expression "puVar18 = &uStack_220" identifier = (pointer_expression "&uStack_220" & identifier)) ;) (expression_statement "pcVar23 = (code *)&DAT_aaaaaaab;" (assignment_expression "pcVar23 = (code *)&DAT_aaaaaaab" identifier = (cast_expression "(code *)&DAT_aaaaaaab" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_aaaaaaab" & identifier))) ;) (do_statement "do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);" do (compound_statement "{\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  }" { (if_statement "if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }" { (labeled_statement "LAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);" statement_identifier : (expression_statement "pcVar21 = *(code **)(pcVar15 + 8);" (assignment_expression "pcVar21 = *(code **)(pcVar15 + 8)" identifier = (pointer_expression "*(code **)(pcVar15 + 8)" * (cast_expression "(code **)(pcVar15 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 8)" ( (binary_expression "pcVar15 + 8" identifier + number_literal) ))))) ;)) (if_statement "if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }" if (parenthesized_expression "(pcVar21 < pcStack_1b8)" ( (binary_expression "pcVar21 < pcStack_1b8" identifier < identifier) )) (compound_statement "{\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }" { (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if (pcVar3 == (code *)0x0) goto LAB_000eb138;" if (parenthesized_expression "(pcVar3 == (code *)0x0)" ( (binary_expression "pcVar3 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eb138;" goto statement_identifier ;)) (expression_statement "iVar2 = (int)pcVar21 * 0x18;" (assignment_expression "iVar2 = (int)pcVar21 * 0x18" identifier = (binary_expression "(int)pcVar21 * 0x18" (cast_expression "(int)pcVar21" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar14 = pcVar3 + iVar2;" (assignment_expression "pcVar14 = pcVar3 + iVar2" identifier = (binary_expression "pcVar3 + iVar2" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar14 + 6);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar14 + 6)" identifier = (binary_expression "(uint)*(ushort *)(pcVar14 + 6)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar14 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 6)" ( (binary_expression "pcVar14 + 6" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }" { (labeled_statement "LAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000eaeb0;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eaeb0;" goto statement_identifier ;))) (expression_statement "iVar11 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb154;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;" if (parenthesized_expression "(*(int *)(piVar13[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar13[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" ( (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eaf54;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar14[4];" (assignment_expression "cVar1 = pcVar14[4]" identifier = (subscript_expression "pcVar14[4]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }" else (compound_statement "{\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }" { (if_statement "if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }" { (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" identifier = (subscript_expression "piVar13[0xc]" identifier [ number_literal ])) ;) (expression_statement "iStack_20c = iVar2;" (assignment_expression "iStack_20c = iVar2" identifier = identifier) ;) (expression_statement "pcStack_214 = pcVar21;" (assignment_expression "pcStack_214 = pcVar21" identifier = identifier) ;) (expression_statement "pcStack_210 = pcVar14;" (assignment_expression "pcStack_210 = pcVar14" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }" { (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13)" identifier = (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" ( (pointer_expression "**(code **)(*piVar13 + 0x6c)" * (pointer_expression "*(code **)(*piVar13 + 0x6c)" * (cast_expression "(code **)(*piVar13 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x6c)" ( (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13)" ( identifier )))) ;) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;" (assignment_expression "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7790)" * (pointer_expression "*(code **)(pcStack_228 + -0x7790)" * (cast_expression "(code **)(pcStack_228 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7790)" ( (binary_expression "pcStack_228 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar13,pcStack_214)" ( identifier , identifier , identifier )))) ;) (expression_statement "iVar2 = iStack_20c;" (assignment_expression "iVar2 = iStack_20c" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_214;" (assignment_expression "pcVar21 = pcStack_214" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_210;" (assignment_expression "pcVar14 = pcStack_210" identifier = identifier) ;) (goto_statement "goto LAB_000eafac;" goto statement_identifier ;) })) (labeled_statement "LAB_000eaeb0:\n                          cVar1 = pcVar14[4];" statement_identifier : (expression_statement "cVar1 = pcVar14[4];" (assignment_expression "cVar1 = pcVar14[4]" identifier = (subscript_expression "pcVar14[4]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" { (if_statement "if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" if (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcStack_218)" ( (binary_expression "*(code **)(*piVar13 + 0x60) == pcStack_218" (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" { (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb100;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" ( (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" else (compound_statement "{\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" { (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" identifier = (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" ( (pointer_expression "**(code **)(*piVar13 + 0x60)" * (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_220 = CONCAT13(2,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(2,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_220._1_3_)" identifier (argument_list "(2,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(pcVar22,puVar18)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" else (compound_statement "{\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" { (expression_statement "piVar7 = (int *)(piVar13[0x3a] + iVar2);" (assignment_expression "piVar7 = (int *)(piVar13[0x3a] + iVar2)" identifier = (cast_expression "(int *)(piVar13[0x3a] + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3a] + iVar2)" ( (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;" if (parenthesized_expression "((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21)" ( (binary_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21" (cast_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555)" ( (binary_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555" (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3)" ( (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 3" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar13[0x3a]" identifier [ number_literal ])) >> number_literal) )) * number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb0e4;" goto statement_identifier ;)) (expression_statement "iVar2 = *piVar7;" (assignment_expression "iVar2 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (if_statement "if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;" if (parenthesized_expression "((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))" ( (binary_expression "(iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2)" ( (comma_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "iVar2 != -2" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000ead48;" goto statement_identifier ;)) (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" * identifier) = number_literal) ;) (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(pcVar22,puVar18)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }" else (compound_statement "{\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }" { (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(pcVar22,puVar18)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" * (cast_expression "(int *)((int)pcVar22 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar22 + 0xc)" ( (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" * (cast_expression "(int *)((int)pcVar22 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar22 + 0xc)" ( (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }" else (compound_statement "{\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }" { (expression_statement "pcStack_22c = *(code **)(pcVar15 + 4);" (assignment_expression "pcStack_22c = *(code **)(pcVar15 + 4)" identifier = (pointer_expression "*(code **)(pcVar15 + 4)" * (cast_expression "(code **)(pcVar15 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 4)" ( (binary_expression "pcVar15 + 4" identifier + number_literal) ))))) ;) (expression_statement "uStack_230 = *(undefined4 *)pcVar15;" (assignment_expression "uStack_230 = *(undefined4 *)pcVar15" identifier = (pointer_expression "*(undefined4 *)pcVar15" * (cast_expression "(undefined4 *)pcVar15" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);" (assignment_expression "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_228 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_228 + -0x76e0)" * (cast_expression "(code **)(pcStack_228 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x76e0)" ( (binary_expression "pcStack_228 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_1c0,piVar13,uStack_1d0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000eae6c;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000eae6c;" goto statement_identifier ;)) (labeled_statement "LAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);" statement_identifier : (expression_statement "uStack_220 = CONCAT13(8,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(8,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_220._1_3_)" identifier (argument_list "(8,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(pcVar22,puVar18)" ( identifier , identifier ))) ;) }))) (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0x10;" (assignment_expression "pcVar15 = pcVar15 + 0x10" identifier = (binary_expression "pcVar15 + 0x10" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcStack_1c4;" (assignment_expression "pcVar4 = pcStack_1c4" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_1c4 != pcVar24)" ( (binary_expression "pcStack_1c4 != pcVar24" identifier != identifier) )) ;) })) }) (else_clause "else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }" else (compound_statement "{\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }" { (if_statement "if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }" if (parenthesized_expression "(iStack_1cc != 4)" ( (binary_expression "iStack_1cc != 4" identifier != number_literal) )) (compound_statement "{\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }" { (labeled_statement "LAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x40ec" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;" statement_identifier : (expression_statement "iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;" (assignment_expression "iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104" identifier = (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4104" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal)) ;)) (expression_statement "(**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);" (call_expression "(**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);" statement_identifier : (expression_statement "pcVar16 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar16 = *(code **)(pcVar4 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar25 = FUN_000eb16c;" (assignment_expression "pcVar25 = FUN_000eb16c" identifier = identifier) ;) (expression_statement "(*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);" (call_expression "(*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" (parenthesized_expression "(*pcVar16)" ( (pointer_expression "*pcVar16" * identifier) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar11 + -0x34dc" identifier + number_literal) ))) ;) (expression_statement "pcVar14 = pcStack_210;" (assignment_expression "pcVar14 = pcStack_210" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_214;" (assignment_expression "pcVar21 = pcStack_214" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_22c;" (assignment_expression "pcVar4 = pcStack_22c" identifier = identifier) ;) (expression_statement "pcStack_25c = pcVar3;" (assignment_expression "pcStack_25c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_268 = (uint)pcVar22;" (assignment_expression "uStack_268 = (uint)pcVar22" identifier = (cast_expression "(uint)pcVar22" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_264 = pcVar15;" (assignment_expression "pcStack_264 = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_260 = pcVar24;" (assignment_expression "pcStack_260 = pcVar24" identifier = identifier) ;) (expression_statement "piStack_258 = piVar13;" (assignment_expression "piStack_258 = piVar13" identifier = identifier) ;) (expression_statement "pcStack_254 = pcVar20;" (assignment_expression "pcStack_254 = pcVar20" identifier = identifier) ;) (expression_statement "puStack_250 = puVar18;" (assignment_expression "puStack_250 = puVar18" identifier = identifier) ;) (expression_statement "uStack_24c = uVar17;" (assignment_expression "uStack_24c = uVar17" identifier = identifier) ;) (expression_statement "pcStack_248 = pcVar23;" (assignment_expression "pcStack_248 = pcVar23" identifier = identifier) ;) (expression_statement "pcStack_244 = pcVar25;" (assignment_expression "pcStack_244 = pcVar25" identifier = identifier) ;) (if_statement "if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" if (parenthesized_expression "(pcStack_22c == (code *)0x9)" ( (binary_expression "pcStack_22c == (code *)0x9" identifier == (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" { (expression_statement "pcVar3 = *(code **)(pcVar16 + 0x3d68e0);" (assignment_expression "pcVar3 = *(code **)(pcVar16 + 0x3d68e0)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d68e0)" * (cast_expression "(code **)(pcVar16 + 0x3d68e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68e0)" ( (binary_expression "pcVar16 + 0x3d68e0" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" if (parenthesized_expression "(pcStack_224 != (code *)0x0)" ( (binary_expression "pcStack_224 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" { (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar2 = *(int *)(pcVar16 + 0x3d6110);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0x3d6110)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) ))))) ;) (expression_statement "pcVar15 = *(code **)(pcVar16 + 0x3d69b8);" (assignment_expression "pcVar15 = *(code **)(pcVar16 + 0x3d69b8)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d69b8)" * (cast_expression "(code **)(pcVar16 + 0x3d69b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69b8)" ( (binary_expression "pcVar16 + 0x3d69b8" identifier + number_literal) ))))) ;) (expression_statement "pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;" (assignment_expression "pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864" identifier = (binary_expression "*(code **)(pcVar16 + 0x3d68e0) + 0x1864" (pointer_expression "*(code **)(pcVar16 + 0x3d68e0)" * (cast_expression "(code **)(pcVar16 + 0x3d68e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68e0)" ( (binary_expression "pcVar16 + 0x3d68e0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar22 = pcStack_228;" (assignment_expression "pcVar22 = pcStack_228" identifier = identifier) ;) (do_statement "do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);" do (compound_statement "{\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      }" { (if_statement "if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }" if (parenthesized_expression "((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0))" ( (binary_expression "(cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)" (parenthesized_expression "(cStack_219 == '\0')" ( (binary_expression "cStack_219 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)" ( (comma_expression "iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0" (assignment_expression "iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)" identifier = (call_expression "(**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d69f4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d69f4)" * (cast_expression "(code **)(pcVar16 + 0x3d69f4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f4)" ( (binary_expression "pcVar16 + 0x3d69f4" identifier + number_literal) ))))) )) (argument_list "(uStack_220,piVar5,uStack_230)" ( identifier , identifier , identifier )))) , (binary_expression "iVar11 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }" { (expression_statement "pcVar3 = *(code **)(pcVar22 + 8);" (assignment_expression "pcVar3 = *(code **)(pcVar22 + 8)" identifier = (pointer_expression "*(code **)(pcVar22 + 8)" * (cast_expression "(code **)(pcVar22 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 8)" ( (binary_expression "pcVar22 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" if (parenthesized_expression "(pcVar3 < pcStack_218)" ( (binary_expression "pcVar3 < pcStack_218" identifier < identifier) )) (compound_statement "{\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" { (if_statement "if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }" if (parenthesized_expression "(pcVar21 == (code *)0x0)" ( (binary_expression "pcVar21 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }" { (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x39d4" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "iVar11 = (int)pcVar3 * 0x18;" (assignment_expression "iVar11 = (int)pcVar3 * 0x18" identifier = (binary_expression "(int)pcVar3 * 0x18" (cast_expression "(int)pcVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar24 = pcVar21 + iVar11;" (assignment_expression "pcVar24 = pcVar21 + iVar11" identifier = (binary_expression "pcVar21 + iVar11" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar24 + 6);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar24 + 6)" identifier = (binary_expression "(uint)*(ushort *)(pcVar24 + 6)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar24 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar24 + 6)" ( (binary_expression "pcVar24 + 6" identifier + number_literal) ))))) ;) (expression_statement "uVar17 = (uint)(byte)pcVar22[0xf];" (assignment_expression "uVar17 = (uint)(byte)pcVar22[0xf]" identifier = (cast_expression "(uint)(byte)pcVar22[0xf]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)pcVar22[0xf]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "pcVar22[0xf]" identifier [ number_literal ])))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }" { (labeled_statement "LAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000eb52c;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eb52c;" goto statement_identifier ;))) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (compound_statement "{\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }" { (expression_statement "iVar2 = *(int *)(pcVar16 + 0x3d68e4);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0x3d68e4)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000eb860;" goto statement_identifier ;) })) (if_statement "if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;" if (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar5[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eb5c8;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar24[4];" (assignment_expression "cVar1 = pcVar24[4]" identifier = (subscript_expression "pcVar24[4]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }" else (compound_statement "{\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }" { (if_statement "if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }" { (expression_statement "iVar12 = piVar5[0xc];" (assignment_expression "iVar12 = piVar5[0xc]" identifier = (subscript_expression "piVar5[0xc]" identifier [ number_literal ])) ;) (expression_statement "iStack_270 = iVar11;" (assignment_expression "iStack_270 = iVar11" identifier = identifier) ;) (expression_statement "pcStack_27c = pcVar3;" (assignment_expression "pcStack_27c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_278 = uVar17;" (assignment_expression "uStack_278 = uVar17" identifier = identifier) ;) (expression_statement "pcStack_274 = pcVar24;" (assignment_expression "pcStack_274 = pcVar24" identifier = identifier) ;) (if_statement "if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }" { (expression_statement "iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);" (assignment_expression "iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288)" identifier = (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" ( (pointer_expression "**(code **)(*piVar5 + 0x6c)" * (pointer_expression "*(code **)(*piVar5 + 0x6c)" * (cast_expression "(code **)(*piVar5 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x6c)" ( (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,auStack_288)" ( identifier , identifier )))) ;) (expression_statement "piVar5[0xc] = iVar12;" (assignment_expression "piVar5[0xc] = iVar12" (subscript_expression "piVar5[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;" (assignment_expression "uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)" identifier = (call_expression "(**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d6944))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d6944)" * (pointer_expression "*(code **)(pcVar16 + 0x3d6944)" * (cast_expression "(code **)(pcVar16 + 0x3d6944)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d6944)" ( (binary_expression "pcVar16 + 0x3d6944" identifier + number_literal) ))))) )) (argument_list "(iVar12,piVar5,pcStack_27c)" ( identifier , identifier , identifier )))) ;) (expression_statement "iVar11 = iStack_270;" (assignment_expression "iVar11 = iStack_270" identifier = identifier) ;) (expression_statement "pcVar3 = pcStack_27c;" (assignment_expression "pcVar3 = pcStack_27c" identifier = identifier) ;) (expression_statement "uVar17 = uStack_278;" (assignment_expression "uVar17 = uStack_278" identifier = identifier) ;) (expression_statement "pcVar24 = pcStack_274;" (assignment_expression "pcVar24 = pcStack_274" identifier = identifier) ;) (goto_statement "goto LAB_000eb628;" goto statement_identifier ;) })) (labeled_statement "LAB_000eb52c:\n                              cVar1 = pcVar24[4];" statement_identifier : (expression_statement "cVar1 = pcVar24[4];" (assignment_expression "cVar1 = pcVar24[4]" identifier = (subscript_expression "pcVar24[4]" identifier [ number_literal ])) ;)) }))) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }" if (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" ( (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }" { (if_statement "if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;" if (parenthesized_expression "((uVar17 == 0) && (pcVar3 == (code *)0x0))" ( (binary_expression "(uVar17 == 0) && (pcVar3 == (code *)0x0)" (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) && (parenthesized_expression "(pcVar3 == (code *)0x0)" ( (binary_expression "pcVar3 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000eb5c8;" goto statement_identifier ;)) (expression_statement "piVar7 = (int *)(piVar5[0x3a] + iVar11);" (assignment_expression "piVar7 = (int *)(piVar5[0x3a] + iVar11)" identifier = (cast_expression "(int *)(piVar5[0x3a] + iVar11)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x3a] + iVar11)" ( (binary_expression "piVar5[0x3a] + iVar11" (subscript_expression "piVar5[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }" if (parenthesized_expression "(pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   ))" ( (binary_expression "pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )" identifier < (cast_expression "(code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )" ( (binary_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555" (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3)" ( (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 3" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar5[0x3a]" identifier [ number_literal ])) >> number_literal) )) * number_literal) )))) )) (compound_statement "{\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }" { (expression_statement "iVar11 = *piVar7;" (assignment_expression "iVar11 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (if_statement "if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }" if (parenthesized_expression "((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2))" ( (binary_expression "(iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)" (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)" ( (comma_expression "iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2" (assignment_expression "iVar12 = *(int *)(pcVar16 + 0x3d68e4)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) ))))) , (binary_expression "iVar11 == -2" identifier == number_literal)) ))) )) (compound_statement "{\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }" { (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" * identifier) = number_literal) ;) (goto_statement "goto LAB_000eb4ac;" goto statement_identifier ;) })) (goto_statement "goto LAB_000eb2d8;" goto statement_identifier ;) })) (goto_statement "goto LAB_000eb808;" goto statement_identifier ;) })) (if_statement "if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }" if (parenthesized_expression "(uVar17 != 4)" ( (binary_expression "uVar17 != 4" identifier != number_literal) )) (compound_statement "{\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }" { (expression_statement "pcStack_27c = (code *)uVar6;" (assignment_expression "pcStack_27c = (code *)uVar6" identifier = (cast_expression "(code *)uVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar17 = (*pcStack_280)(uVar17,piVar5);" (assignment_expression "uVar17 = (*pcStack_280)(uVar17,piVar5)" identifier = (call_expression "(*pcStack_280)(uVar17,piVar5)" (parenthesized_expression "(*pcStack_280)" ( (pointer_expression "*pcStack_280" * identifier) )) (argument_list "(uVar17,piVar5)" ( identifier , identifier )))) ;) (if_statement "if (uVar17 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }" if (parenthesized_expression "(uVar17 < 9)" ( (binary_expression "uVar17 < 9" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }" { comment comment (expression_statement "pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();" (assignment_expression "pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )()" identifier = (cast_expression "(code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )()" (parenthesized_expression "(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )" ( (pointer_expression "*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)" * (parenthesized_expression "(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)" ( (binary_expression "pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4" (binary_expression "pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4)" identifier + (pointer_expression "*(int *)(iVar2 + 0x5490 + uVar17 * 4)" * (cast_expression "(int *)(iVar2 + 0x5490 + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x5490 + uVar17 * 4)" ( (binary_expression "iVar2 + 0x5490 + uVar17 * 4" (binary_expression "iVar2 + 0x5490" identifier + number_literal) + (binary_expression "uVar17 * 4" identifier * number_literal)) ))))) + number_literal) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x39d4" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (if_statement "if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }" if (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcVar15)" ( (binary_expression "*(code **)(*piVar5 + 0x60) == pcVar15" (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }" { (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb840;" goto statement_identifier ;)) (expression_statement "iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);" (assignment_expression "iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "pcStack_27c = pcVar4;" (assignment_expression "pcStack_27c = pcVar4" identifier = identifier) ;) }) (else_clause "else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }" else (compound_statement "{\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }" { (expression_statement "pcStack_27c = pcVar4;" (assignment_expression "pcStack_27c = pcVar4" identifier = identifier) ;) (expression_statement "iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);" (assignment_expression "iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" identifier = (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" ( (pointer_expression "**(code **)(*piVar5 + 0x60)" * (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,uVar6)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar3 = *(code **)(pcVar16 + 0x3d69f0);" (assignment_expression "pcVar3 = *(code **)(pcVar16 + 0x3d69f0)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" * (cast_expression "(code **)(pcVar16 + 0x3d69f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f0)" ( (binary_expression "pcVar16 + 0x3d69f0" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar11 + 0x98)" * (cast_expression "(uint *)(iVar11 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x98)" ( (binary_expression "iVar11 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar11 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar11 + 0x98)" * (cast_expression "(uint *)(iVar11 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x98)" ( (binary_expression "iVar11 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "auStack_288[0] = SUB41(pcStack_27c,0);" (assignment_expression "auStack_288[0] = SUB41(pcStack_27c,0)" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = (call_expression "SUB41(pcStack_27c,0)" identifier (argument_list "(pcStack_27c,0)" ( identifier , number_literal )))) ;) (expression_statement "(*pcVar3)(pcVar14,auStack_288);" (call_expression "(*pcVar3)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) (if_statement "if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;" if (parenthesized_expression "(pcStack_27c == (code *)&DAT_00000008)" ( (binary_expression "pcStack_27c == (code *)&DAT_00000008" identifier == (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000eb4cc;" goto statement_identifier ;)) (expression_statement "iVar11 = *(int *)(pcVar14 + 0xc);" (assignment_expression "iVar11 = *(int *)(pcVar14 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) ))))) ;) }) (else_clause "else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" else (compound_statement "{\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" { (labeled_statement "LAB_000eb4ac:\n                            auStack_288[0] = 0;" statement_identifier : (expression_statement "auStack_288[0] = 0;" (assignment_expression "auStack_288[0] = 0" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);" (call_expression "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f0))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d69f0)" * (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" * (cast_expression "(code **)(pcVar16 + 0x3d69f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f0)" ( (binary_expression "pcVar16 + 0x3d69f0" identifier + number_literal) ))))) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) (expression_statement "iVar11 = *(int *)(pcVar14 + 0xc);" (assignment_expression "iVar11 = *(int *)(pcVar14 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) ))))) ;) }))) (expression_statement "*(int *)(pcVar14 + 0xc) = iVar11 + 1;" (assignment_expression "*(int *)(pcVar14 + 0xc) = iVar11 + 1" (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar11 + 1" identifier + number_literal)) ;) }) (else_clause "else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }" else (compound_statement "{\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }" { (labeled_statement "LAB_000eb5c8:\n                          auStack_288[0] = 8;" statement_identifier : (expression_statement "auStack_288[0] = 8;" (assignment_expression "auStack_288[0] = 8" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);" (call_expression "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f0))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d69f0)" * (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" * (cast_expression "(code **)(pcVar16 + 0x3d69f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f0)" ( (binary_expression "pcVar16 + 0x3d69f0" identifier + number_literal) ))))) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) }))) (labeled_statement "LAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;" statement_identifier : (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;)) (expression_statement "pcVar22 = pcVar22 + 0x10;" (assignment_expression "pcVar22 = pcVar22 + 0x10" identifier = (binary_expression "pcVar22 + 0x10" identifier + number_literal)) ;) (expression_statement "pcVar3 = pcStack_224;" (assignment_expression "pcVar3 = pcStack_224" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_224 != pcVar20)" ( (binary_expression "pcStack_224 != pcVar20" identifier != identifier) )) ;) })) }) (else_clause "else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" else (compound_statement "{\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" { (if_statement "if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }" if (parenthesized_expression "(pcStack_22c != (code *)&DAT_00000004)" ( (binary_expression "pcStack_22c != (code *)&DAT_00000004" identifier != (cast_expression "(code *)&DAT_00000004" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }" { (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x3588" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) + -0x4158" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);" (assignment_expression "pcStack_280 = *(code **)(pcVar16 + 0x3d69b8)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d69b8)" * (cast_expression "(code **)(pcVar16 + 0x3d69b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69b8)" ( (binary_expression "pcVar16 + 0x3d69b8" identifier + number_literal) ))))) ;) (expression_statement "pcVar3 = pcStack_280;" (assignment_expression "pcVar3 = pcStack_280" identifier = identifier) ;) (if_statement "if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" if (parenthesized_expression "(pcStack_224 != (code *)0x0)" ( (binary_expression "pcStack_224 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" { (expression_statement "pcVar22 = *(code **)(pcVar16 + 0x3d69f0);" (assignment_expression "pcVar22 = *(code **)(pcVar16 + 0x3d69f0)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" * (cast_expression "(code **)(pcVar16 + 0x3d69f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f0)" ( (binary_expression "pcVar16 + 0x3d69f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (do_statement "do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);" do (compound_statement "{\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      }" { (while_statement "while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }" while (parenthesized_expression "((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0)))" ( (parenthesized_expression "(cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))" ( (binary_expression "cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0)" (binary_expression "cStack_219 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0)" ( (comma_expression "iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0" (assignment_expression "iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230)" identifier = (call_expression "(**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d69f4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d69f4)" * (cast_expression "(code **)(pcVar16 + 0x3d69f4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f4)" ( (binary_expression "pcVar16 + 0x3d69f4" identifier + number_literal) ))))) )) (argument_list "(uStack_220,piVar5,uStack_230)" ( identifier , identifier , identifier )))) , (binary_expression "iVar2 == 0" identifier == number_literal)) ))) )) )) (compound_statement "{\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }" { (labeled_statement "LAB_000eb42c:\n                          auStack_288[0] = 8;" statement_identifier : (expression_statement "auStack_288[0] = 8;" (assignment_expression "auStack_288[0] = 8" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcVar4 + 0x18;" (assignment_expression "pcVar4 = pcVar4 + 0x18" identifier = (binary_expression "pcVar4 + 0x18" identifier + number_literal)) ;) (if_statement "if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }" if (parenthesized_expression "(pcStack_224 == pcVar20)" ( (binary_expression "pcStack_224 == pcVar20" identifier == identifier) )) (compound_statement "{\n                            return pcStack_224;\n                          }" { (return_statement "return pcStack_224;" return identifier ;) })) })) (expression_statement "pcVar3 = *(code **)(pcVar4 + 8);" (assignment_expression "pcVar3 = *(code **)(pcVar4 + 8)" identifier = (pointer_expression "*(code **)(pcVar4 + 8)" * (cast_expression "(code **)(pcVar4 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 8)" ( (binary_expression "pcVar4 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }" if (parenthesized_expression "(pcVar3 < pcStack_218)" ( (binary_expression "pcVar3 < pcStack_218" identifier < identifier) )) (compound_statement "{\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }" { (if_statement "if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }" if (parenthesized_expression "(pcVar21 == (code *)0x0)" ( (binary_expression "pcVar21 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }" { (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x39d4" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) + -0x41a0" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "iVar11 = (int)pcVar3 * 0x18;" (assignment_expression "iVar11 = (int)pcVar3 * 0x18" identifier = (binary_expression "(int)pcVar3 * 0x18" (cast_expression "(int)pcVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar15 = pcVar21 + iVar11;" (assignment_expression "pcVar15 = pcVar21 + iVar11" identifier = (binary_expression "pcVar21 + iVar11" identifier + identifier)) ;) (expression_statement "uVar17 = (uint)*(ushort *)(pcVar15 + 6);" (assignment_expression "uVar17 = (uint)*(ushort *)(pcVar15 + 6)" identifier = (binary_expression "(uint)*(ushort *)(pcVar15 + 6)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar15 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 6)" ( (binary_expression "pcVar15 + 6" identifier + number_literal) ))))) ;) (expression_statement "uVar6 = (uint)(byte)pcVar4[0xf];" (assignment_expression "uVar6 = (uint)(byte)pcVar4[0xf]" identifier = (cast_expression "(uint)(byte)pcVar4[0xf]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)pcVar4[0xf]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "pcVar4[0xf]" identifier [ number_literal ])))) ;) (if_statement "if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }" if (parenthesized_expression "(uVar17 < 0xff00)" ( (binary_expression "uVar17 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }" { (labeled_statement "LAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;" statement_identifier : (if_statement "if (uVar17 == 0) goto LAB_000eb278;" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eb278;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcVar16 + 0x3d68e4);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0x3d68e4)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) ))))) ;) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (compound_statement "{\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }" { (labeled_statement "LAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);" statement_identifier : (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x34dc" identifier + number_literal) ))))) ;)) (return_statement "return pcVar4;" return identifier ;) })) (if_statement "if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;" if (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar17 * 4) == 0)" ( (binary_expression "*(int *)(piVar5[0xe] + uVar17 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar17 * 4)" ( (binary_expression "piVar5[0xe] + uVar17 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eb42c;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar15[4];" (assignment_expression "cVar1 = pcVar15[4]" identifier = (subscript_expression "pcVar15[4]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }" else (compound_statement "{\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }" { (if_statement "if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }" if (parenthesized_expression "(uVar17 == 0xffff)" ( (binary_expression "uVar17 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }" { (expression_statement "iVar2 = piVar5[0xc];" (assignment_expression "iVar2 = piVar5[0xc]" identifier = (subscript_expression "piVar5[0xc]" identifier [ number_literal ])) ;) (expression_statement "iStack_270 = iVar11;" (assignment_expression "iStack_270 = iVar11" identifier = identifier) ;) (expression_statement "pcStack_27c = pcVar3;" (assignment_expression "pcStack_27c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_278 = uVar6;" (assignment_expression "uStack_278 = uVar6" identifier = identifier) ;) (expression_statement "pcStack_274 = pcVar15;" (assignment_expression "pcStack_274 = pcVar15" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5)" identifier = (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" ( (pointer_expression "**(code **)(*piVar5 + 0x6c)" * (pointer_expression "*(code **)(*piVar5 + 0x6c)" * (cast_expression "(code **)(*piVar5 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x6c)" ( (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5)" ( identifier )))) ;) (expression_statement "piVar5[0xc] = iVar2;" (assignment_expression "piVar5[0xc] = iVar2" (subscript_expression "piVar5[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);" (assignment_expression "uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c)" identifier = (call_expression "(**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d6944))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d6944)" * (pointer_expression "*(code **)(pcVar16 + 0x3d6944)" * (cast_expression "(code **)(pcVar16 + 0x3d6944)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d6944)" ( (binary_expression "pcVar16 + 0x3d6944" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar5,pcStack_27c)" ( identifier , identifier , identifier )))) ;) (expression_statement "iVar11 = iStack_270;" (assignment_expression "iVar11 = iStack_270" identifier = identifier) ;) (expression_statement "pcVar3 = pcStack_27c;" (assignment_expression "pcVar3 = pcStack_27c" identifier = identifier) ;) (expression_statement "uVar6 = uStack_278;" (assignment_expression "uVar6 = uStack_278" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_274;" (assignment_expression "pcVar15 = pcStack_274" identifier = identifier) ;) (goto_statement "goto LAB_000eb354;" goto statement_identifier ;) })) (labeled_statement "LAB_000eb278:\n                            cVar1 = pcVar15[4];" statement_identifier : (expression_statement "cVar1 = pcVar15[4];" (assignment_expression "cVar1 = pcVar15[4]" identifier = (subscript_expression "pcVar15[4]" identifier [ number_literal ])) ;)) }))) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" { (if_statement "if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" if (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcStack_280)" ( (binary_expression "*(code **)(*piVar5 + 0x60) == pcStack_280" (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" { (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (compound_statement "{\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }" { (labeled_statement "LAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);" statement_identifier : (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;)) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);" (assignment_expression "iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4)" identifier = (pointer_expression "*(int *)(piVar5[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar17 * 4)" ( (binary_expression "piVar5[0xe] + uVar17 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" else (compound_statement "{\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17)" identifier = (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar17)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" ( (pointer_expression "**(code **)(*piVar5 + 0x60)" * (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,uVar17)" ( identifier , identifier )))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar17 & 0x7fffffff | 0x80000000" (binary_expression "uVar17 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "auStack_288[0] = 1;" (assignment_expression "auStack_288[0] = 1" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" else (compound_statement "{\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" { (if_statement "if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;" if (parenthesized_expression "((uVar6 == 0) && (pcVar3 == (code *)0x0))" ( (binary_expression "(uVar6 == 0) && (pcVar3 == (code *)0x0)" (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) && (parenthesized_expression "(pcVar3 == (code *)0x0)" ( (binary_expression "pcVar3 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000eb42c;" goto statement_identifier ;)) (expression_statement "piVar7 = (int *)(piVar5[0x3a] + iVar11);" (assignment_expression "piVar7 = (int *)(piVar5[0x3a] + iVar11)" identifier = (cast_expression "(int *)(piVar5[0x3a] + iVar11)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x3a] + iVar11)" ( (binary_expression "piVar5[0x3a] + iVar11" (subscript_expression "piVar5[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }" if (parenthesized_expression "((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               )" ( (binary_expression "(code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3" (cast_expression "(code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555)" ( (binary_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555" (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3)" ( (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 3" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar5[0x3a]" identifier [ number_literal ])) >> number_literal) )) * number_literal) ))) <= identifier) )) (compound_statement "{\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }" { (labeled_statement "LAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);" statement_identifier : (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;)) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "iVar2 = *piVar7;" (assignment_expression "iVar2 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (if_statement "if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }" if (parenthesized_expression "((iVar2 != 0) && (iVar2 != -2))" ( (binary_expression "(iVar2 != 0) && (iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar2 != -2)" ( (binary_expression "iVar2 != -2" identifier != number_literal) ))) )) (compound_statement "{\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }" { (expression_statement "iVar12 = *(int *)(pcVar16 + 0x3d68e4);" (assignment_expression "iVar12 = *(int *)(pcVar16 + 0x3d68e4)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);" statement_identifier : (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar12 + -0x3524" identifier + number_literal) ))))) ;)) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" * identifier) = number_literal) ;) (expression_statement "auStack_288[0] = 0;" (assignment_expression "auStack_288[0] = 0" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }" else (compound_statement "{\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }" { (expression_statement "auStack_288[0] = 0;" (assignment_expression "auStack_288[0] = 0" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) }))) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "*(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;" (assignment_expression "*(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1" (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(pcVar14 + 0xc) + 1" (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar4 = pcVar4 + 0x18;" (assignment_expression "pcVar4 = pcVar4 + 0x18" identifier = (binary_expression "pcVar4 + 0x18" identifier + number_literal)) ;) (expression_statement "pcVar3 = pcStack_224;" (assignment_expression "pcVar3 = pcStack_224" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_224 != pcVar20)" ( (binary_expression "pcStack_224 != pcVar20" identifier != identifier) )) ;) })) }))) (return_statement "return pcVar3;" return identifier ;) })) (expression_statement "pcStack_218 = *(code **)(pcVar14 + 0x3d7018);" (assignment_expression "pcStack_218 = *(code **)(pcVar14 + 0x3d7018)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x3d7018)" * (cast_expression "(code **)(pcVar14 + 0x3d7018)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x3d7018)" ( (binary_expression "pcVar14 + 0x3d7018" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_218;" (assignment_expression "pcVar4 = pcStack_218" identifier = identifier) ;) (if_statement "if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }" if (parenthesized_expression "(pcStack_1c4 != (code *)0x0)" ( (binary_expression "pcStack_1c4 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }" { (expression_statement "pcVar24 = *(code **)(pcVar14 + 0x3d7050);" (assignment_expression "pcVar24 = *(code **)(pcVar14 + 0x3d7050)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x3d7050)" * (cast_expression "(code **)(pcVar14 + 0x3d7050)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x3d7050)" ( (binary_expression "pcVar14 + 0x3d7050" identifier + number_literal) ))))) ;) (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar23 = (code *)&uStack_220;" (assignment_expression "pcVar23 = (code *)&uStack_220" identifier = (cast_expression "(code *)&uStack_220" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_220" & identifier))) ;) (expression_statement "puVar18 = (uint *)&DAT_aaaaaaab;" (assignment_expression "puVar18 = (uint *)&DAT_aaaaaaab" identifier = (cast_expression "(uint *)&DAT_aaaaaaab" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_aaaaaaab" & identifier))) ;) (labeled_statement "LAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }" statement_identifier : (while_statement "while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }" while (parenthesized_expression "(uVar17 != 0)" ( (binary_expression "uVar17 != 0" identifier != number_literal) )) (compound_statement "{\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }" { (expression_statement "pcStack_22c = *(code **)(pcVar15 + 4);" (assignment_expression "pcStack_22c = *(code **)(pcVar15 + 4)" identifier = (pointer_expression "*(code **)(pcVar15 + 4)" * (cast_expression "(code **)(pcVar15 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 4)" ( (binary_expression "pcVar15 + 4" identifier + number_literal) ))))) ;) (expression_statement "uStack_230 = *(undefined4 *)pcVar15;" (assignment_expression "uStack_230 = *(undefined4 *)pcVar15" identifier = (pointer_expression "*(undefined4 *)pcVar15" * (cast_expression "(undefined4 *)pcVar15" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);" (assignment_expression "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_228 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_228 + -0x76e0)" * (cast_expression "(code **)(pcStack_228 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x76e0)" ( (binary_expression "pcStack_228 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_1c0,piVar13,uStack_1d0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);" statement_identifier : (expression_statement "uStack_220 = CONCAT13(8,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(8,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_220._1_3_)" identifier (argument_list "(8,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar22,pcVar23)" ( identifier , identifier ))) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0x18;" (assignment_expression "pcVar15 = pcVar15 + 0x18" identifier = (binary_expression "pcVar15 + 0x18" identifier + number_literal)) ;) (if_statement "if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }" if (parenthesized_expression "(pcStack_1c4 == pcVar20)" ( (binary_expression "pcStack_1c4 == pcVar20" identifier == identifier) )) (compound_statement "{\n                      return pcStack_1c4;\n                    }" { (return_statement "return pcStack_1c4;" return identifier ;) })) }))) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (expression_statement "pcVar14 = *(code **)(pcVar15 + 8);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 8)" identifier = (pointer_expression "*(code **)(pcVar15 + 8)" * (cast_expression "(code **)(pcVar15 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 8)" ( (binary_expression "pcVar15 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }" if (parenthesized_expression "(pcVar14 < pcStack_1b8)" ( (binary_expression "pcVar14 < pcStack_1b8" identifier < identifier) )) (compound_statement "{\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }" { (if_statement "if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }" if (parenthesized_expression "(pcVar3 == (code *)0x0)" ( (binary_expression "pcVar3 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }" { (expression_statement "(**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);" (call_expression "(**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7810)" * (pointer_expression "*(code **)(pcStack_228 + -0x7810)" * (cast_expression "(code **)(pcStack_228 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7810)" ( (binary_expression "pcStack_228 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140)" ( (binary_expression "*(int *)(pcStack_228 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_228 + -0x7fc4)" * (cast_expression "(int *)(pcStack_228 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x7fc4)" ( (binary_expression "pcStack_228 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_228 + -0x77f0) + -0x4140" (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4128" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (goto_statement "goto LAB_000eb11c;" goto statement_identifier ;) })) (expression_statement "iVar2 = (int)pcVar14 * 0x18;" (assignment_expression "iVar2 = (int)pcVar14 * 0x18" identifier = (binary_expression "(int)pcVar14 * 0x18" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar21 = pcVar3 + iVar2;" (assignment_expression "pcVar21 = pcVar3 + iVar2" identifier = (binary_expression "pcVar3 + iVar2" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar21 + 6);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar21 + 6)" identifier = (binary_expression "(uint)*(ushort *)(pcVar21 + 6)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar21 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 6)" ( (binary_expression "pcVar21 + 6" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }" { (labeled_statement "LAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000eac14;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eac14;" goto statement_identifier ;))) (expression_statement "iVar11 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb154;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;" if (parenthesized_expression "(*(int *)(piVar13[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar13[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" ( (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eacb4;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar21[4];" (assignment_expression "cVar1 = pcVar21[4]" identifier = (subscript_expression "pcVar21[4]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }" else (compound_statement "{\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }" { (if_statement "if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }" { (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" identifier = (subscript_expression "piVar13[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_214 = pcVar14;" (assignment_expression "pcStack_214 = pcVar14" identifier = identifier) ;) (expression_statement "iStack_20c = iVar2;" (assignment_expression "iStack_20c = iVar2" identifier = identifier) ;) (expression_statement "pcStack_210 = pcVar21;" (assignment_expression "pcStack_210 = pcVar21" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }" { (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13)" identifier = (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" ( (pointer_expression "**(code **)(*piVar13 + 0x6c)" * (pointer_expression "*(code **)(*piVar13 + 0x6c)" * (cast_expression "(code **)(*piVar13 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x6c)" ( (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13)" ( identifier )))) ;) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);" (assignment_expression "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7790)" * (pointer_expression "*(code **)(pcStack_228 + -0x7790)" * (cast_expression "(code **)(pcStack_228 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7790)" ( (binary_expression "pcStack_228 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar13,pcStack_214)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar14 = pcStack_214;" (assignment_expression "pcVar14 = pcStack_214" identifier = identifier) ;) (expression_statement "iVar2 = iStack_20c;" (assignment_expression "iVar2 = iStack_20c" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_210;" (assignment_expression "pcVar21 = pcStack_210" identifier = identifier) ;) (goto_statement "goto LAB_000eadbc;" goto statement_identifier ;) })) (labeled_statement "LAB_000eac14:\n                      cVar1 = pcVar21[4];" statement_identifier : (expression_statement "cVar1 = pcVar21[4];" (assignment_expression "cVar1 = pcVar21[4]" identifier = (subscript_expression "pcVar21[4]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" { (if_statement "if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" if (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcStack_218)" ( (binary_expression "*(code **)(*piVar13 + 0x60) == pcStack_218" (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" { (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb100;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" ( (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" else (compound_statement "{\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" { (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" identifier = (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" ( (pointer_expression "**(code **)(*piVar13 + 0x60)" * (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_220 = CONCAT13(1,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(1,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_220._1_3_)" identifier (argument_list "(1,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar22,pcVar23)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" else (compound_statement "{\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" { (expression_statement "pcVar21 = (code *)(piVar13[0x3a] + iVar2);" (assignment_expression "pcVar21 = (code *)(piVar13[0x3a] + iVar2)" identifier = (cast_expression "(code *)(piVar13[0x3a] + iVar2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3a] + iVar2)" ( (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;" if (parenthesized_expression "((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)" ( (binary_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14" (cast_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18)" ( (binary_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18" (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3)" ( (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 3" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar13[0x3a]" identifier [ number_literal ])) >> number_literal) )) * (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ))) <= identifier) )) (goto_statement "goto LAB_000eb0e4;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }" if (parenthesized_expression "((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2))" ( (binary_expression "(*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)" (parenthesized_expression "(*(int *)pcVar21 != 0)" ( (binary_expression "*(int *)pcVar21 != 0" (pointer_expression "*(int *)pcVar21" * (cast_expression "(int *)pcVar21" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar21 != -2)" ( (binary_expression "*(int *)pcVar21 != -2" (pointer_expression "*(int *)pcVar21" * (cast_expression "(int *)pcVar21" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }" { (expression_statement "iVar11 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);" statement_identifier : (expression_statement "(**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);" (call_expression "(**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7810)" * (pointer_expression "*(code **)(pcStack_228 + -0x7810)" * (cast_expression "(code **)(pcStack_228 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7810)" ( (binary_expression "pcStack_228 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524)" ( (binary_expression "*(int *)(pcStack_228 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_228 + -0x7fc4)" * (cast_expression "(int *)(pcStack_228 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x7fc4)" ( (binary_expression "pcStack_228 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar11 + -0x3524" identifier + number_literal) ))) ;)) })) (expression_statement "*(int *)pcVar21 = -2;" (assignment_expression "*(int *)pcVar21 = -2" (pointer_expression "*(int *)pcVar21" * (cast_expression "(int *)pcVar21" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar22,pcVar23)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }" else (compound_statement "{\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }" { (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar22,pcVar23)" ( identifier , identifier ))) ;) }))) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" * (cast_expression "(int *)((int)pcVar22 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar22 + 0xc)" ( (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" * (cast_expression "(int *)((int)pcVar22 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar22 + 0xc)" ( (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0x18;" (assignment_expression "pcVar15 = pcVar15 + 0x18" identifier = (binary_expression "pcVar15 + 0x18" identifier + number_literal)) ;) (if_statement "if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }" if (parenthesized_expression "(pcStack_1c4 == pcVar20)" ( (binary_expression "pcStack_1c4 == pcVar20" identifier == identifier) )) (compound_statement "{\n                    return pcStack_1c4;\n                  }" { (return_statement "return pcStack_1c4;" return identifier ;) })) (goto_statement "goto LAB_000eabc8;" goto statement_identifier ;) })) }))) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);" (assignment_expression "unaff_s2 = *(code **)(pcVar20 + 0x3d8b48)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x3d8b48)" * (cast_expression "(code **)(pcVar20 + 0x3d8b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x3d8b48)" ( (binary_expression "pcVar20 + 0x3d8b48" identifier + number_literal) ))))) ;) (expression_statement "pcVar3 = param_1;" (assignment_expression "pcVar3 = param_1" identifier = identifier) ;) (if_statement "if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }" if (parenthesized_expression "(param_1 != (code *)0x0)" ( (binary_expression "param_1 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }" { (expression_statement "unaff_s5 = (code *)0x0;" (assignment_expression "unaff_s5 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);" (assignment_expression "unaff_s8 = *(code **)(pcVar20 + 0x3d8b10)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x3d8b10)" * (cast_expression "(code **)(pcVar20 + 0x3d8b10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x3d8b10)" ( (binary_expression "pcVar20 + 0x3d8b10" identifier + number_literal) ))))) ;) (expression_statement "unaff_s7 = &uStack_90;" (assignment_expression "unaff_s7 = &uStack_90" identifier = (pointer_expression "&uStack_90" & identifier)) ;) (do_statement "do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);" do (compound_statement "{\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              }" { (while_statement "while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }" while (parenthesized_expression "(uVar17 != 0)" ( (binary_expression "uVar17 != 0" identifier != number_literal) )) (compound_statement "{\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }" { (expression_statement "pcStack_9c = (code *)*puStack_38;" (assignment_expression "pcStack_9c = (code *)*puStack_38" identifier = (cast_expression "(code *)*puStack_38" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puStack_38" * identifier))) ;) (expression_statement "uStack_a0 = 0;" (assignment_expression "uStack_a0 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);" (assignment_expression "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_98 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_98 + -0x76e0)" * (cast_expression "(code **)(pcStack_98 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x76e0)" ( (binary_expression "pcStack_98 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(param_4,piVar7,pcVar4 + 0x3e03cc)" ( identifier , identifier , (binary_expression "pcVar4 + 0x3e03cc" identifier + number_literal) )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);" statement_identifier : (expression_statement "uStack_90 = CONCAT13(8,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(8,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_90._1_3_)" identifier (argument_list "(8,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" ( (pointer_expression "*unaff_s2" * identifier) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" identifier = (binary_expression "unaff_s5 + 1" identifier + number_literal)) ;) (expression_statement "puStack_38 = puStack_38 + 3;" (assignment_expression "puStack_38 = puStack_38 + 3" identifier = (binary_expression "puStack_38 + 3" identifier + number_literal)) ;) (if_statement "if (param_1 == unaff_s5) {\n                    return param_1;\n                  }" if (parenthesized_expression "(param_1 == unaff_s5)" ( (binary_expression "param_1 == unaff_s5" identifier == identifier) )) (compound_statement "{\n                    return param_1;\n                  }" { (return_statement "return param_1;" return identifier ;) })) })) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (expression_statement "pcVar3 = (code *)((uint)puStack_38[1] >> 8);" (assignment_expression "pcVar3 = (code *)((uint)puStack_38[1] >> 8)" identifier = (cast_expression "(code *)((uint)puStack_38[1] >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)puStack_38[1] >> 8)" ( (binary_expression "(uint)puStack_38[1] >> 8" (cast_expression "(uint)puStack_38[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puStack_38[1]" identifier [ number_literal ])) >> number_literal) )))) ;) (if_statement "if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" if (parenthesized_expression "(pcVar3 < pcStack_28)" ( (binary_expression "pcVar3 < pcStack_28" identifier < identifier) )) (compound_statement "{\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" { (expression_statement "pcVar20 = (code *)((int)pcVar3 * 0x10);" (assignment_expression "pcVar20 = (code *)((int)pcVar3 * 0x10)" identifier = (cast_expression "(code *)((int)pcVar3 * 0x10)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar3 * 0x10)" ( (binary_expression "(int)pcVar3 * 0x10" (cast_expression "(int)pcVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }" if (parenthesized_expression "(iStack_24 == 0)" ( (binary_expression "iStack_24 == 0" identifier == number_literal) )) (compound_statement "{\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }" { (expression_statement "(**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);" (call_expression "(**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7810)" * (pointer_expression "*(code **)(pcStack_98 + -0x7810)" * (cast_expression "(code **)(pcStack_98 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7810)" ( (binary_expression "pcStack_98 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080)" ( (binary_expression "*(int *)(pcStack_98 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_98 + -0x7fc4)" * (cast_expression "(int *)(pcStack_98 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x7fc4)" ( (binary_expression "pcStack_98 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_98 + -0x77f0) + -0x5080" (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);" statement_identifier : (expression_statement "iVar2 = *(int *)(pcVar22 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcVar22 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcVar22 + -0x77f0)" * (cast_expression "(int *)(pcVar22 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x77f0)" ( (binary_expression "pcVar22 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);" statement_identifier : (expression_statement "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);" (call_expression "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" ( (pointer_expression "**(code **)(pcVar22 + -0x7810)" * (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x5068" identifier + number_literal) ))) ;)) (labeled_statement "LAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" ( (pointer_expression "**(code **)(pcVar22 + -0x7810)" * (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar22 + -0x77f0)" * (cast_expression "(int *)(pcVar22 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x77f0)" ( (binary_expression "pcVar22 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (goto_statement "goto LAB_000e95f4;" goto statement_identifier ;) })) (expression_statement "pcVar15 = pcVar20 + iStack_24;" (assignment_expression "pcVar15 = pcVar20 + iStack_24" identifier = (binary_expression "pcVar20 + iStack_24" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe)" identifier = (binary_expression "(uint)*(ushort *)(pcVar15 + 0xe)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar15 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe)" ( (binary_expression "pcVar15 + 0xe" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }" { (labeled_statement "LAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000e910c;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e910c;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e962c;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;" if (parenthesized_expression "(*(int *)(piVar7[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar7[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" ( (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e91a4;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" identifier = (subscript_expression "pcVar15[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }" else (compound_statement "{\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }" { (if_statement "if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }" { (expression_statement "iVar2 = piVar7[0xc];" (assignment_expression "iVar2 = piVar7[0xc]" identifier = (subscript_expression "piVar7[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_88 = pcVar3;" (assignment_expression "pcStack_88 = pcVar3" identifier = identifier) ;) (expression_statement "pcStack_84 = pcVar20;" (assignment_expression "pcStack_84 = pcVar20" identifier = identifier) ;) (expression_statement "pcStack_80 = pcVar15;" (assignment_expression "pcStack_80 = pcVar15" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7)" identifier = (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" ( (pointer_expression "**(code **)(*piVar7 + 0x6c)" * (pointer_expression "*(code **)(*piVar7 + 0x6c)" * (cast_expression "(code **)(*piVar7 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x6c)" ( (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7)" ( identifier )))) ;) (expression_statement "piVar7[0xc] = iVar2;" (assignment_expression "piVar7[0xc] = iVar2" (subscript_expression "piVar7[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);" (assignment_expression "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7790)" * (pointer_expression "*(code **)(pcStack_98 + -0x7790)" * (cast_expression "(code **)(pcStack_98 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7790)" ( (binary_expression "pcStack_98 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar7,pcStack_88)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar3 = pcStack_88;" (assignment_expression "pcVar3 = pcStack_88" identifier = identifier) ;) (expression_statement "pcVar20 = pcStack_84;" (assignment_expression "pcVar20 = pcStack_84" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_80;" (assignment_expression "pcVar15 = pcStack_80" identifier = identifier) ;) (goto_statement "goto LAB_000e92ac;" goto statement_identifier ;) })) (labeled_statement "LAB_000e910c:\n                    cVar1 = pcVar15[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" identifier = (subscript_expression "pcVar15[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }" if (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" ( (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }" { (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (if_statement "if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }" if (parenthesized_expression "(pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4))" ( (binary_expression "pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" identifier < (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) >> number_literal) )))) )) (compound_statement "{\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }" { (expression_statement "pcVar20 = pcVar20 + piVar7[0x3a];" (assignment_expression "pcVar20 = pcVar20 + piVar7[0x3a]" identifier = (binary_expression "pcVar20 + piVar7[0x3a]" identifier + (subscript_expression "piVar7[0x3a]" identifier [ number_literal ]))) ;) (if_statement "if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }" if (parenthesized_expression "((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2))" ( (binary_expression "(*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)" (parenthesized_expression "(*(int *)pcVar20 != 0)" ( (binary_expression "*(int *)pcVar20 != 0" (pointer_expression "*(int *)pcVar20" * (cast_expression "(int *)pcVar20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar20 != -2)" ( (binary_expression "*(int *)pcVar20 != -2" (pointer_expression "*(int *)pcVar20" * (cast_expression "(int *)pcVar20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }" { (expression_statement "iVar11 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);" statement_identifier : (expression_statement "pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);" (assignment_expression "pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" identifier = (cast_expression "(code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" ( (binary_expression "*(int *)(pcStack_98 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_98 + -0x7fc4)" * (cast_expression "(int *)(pcStack_98 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x7fc4)" ( (binary_expression "pcStack_98 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;)) (expression_statement "(**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);" (call_expression "(**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7810)" * (pointer_expression "*(code **)(pcStack_98 + -0x7810)" * (cast_expression "(code **)(pcStack_98 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7810)" ( (binary_expression "pcStack_98 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(pcVar20,0x71f,iVar11 + -0x48c0)" ( identifier , number_literal , (binary_expression "iVar11 + -0x48c0" identifier + number_literal) ))) ;) })) (expression_statement "*(int *)pcVar20 = -2;" (assignment_expression "*(int *)pcVar20 = -2" (pointer_expression "*(int *)pcVar20" * (cast_expression "(int *)pcVar20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" ( (pointer_expression "*unaff_s2" * identifier) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_000e90a8;" goto statement_identifier ;) })) (goto_statement "goto LAB_000e95c0;" goto statement_identifier ;) })) (if_statement "if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" if (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == unaff_s8)" ( (binary_expression "*(code **)(*piVar7 + 0x60) == unaff_s8" (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" { (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e95d8;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" ( (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" else (compound_statement "{\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" identifier = (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" ( (pointer_expression "**(code **)(*piVar7 + 0x60)" * (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_90 = CONCAT13(1,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(1,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_90._1_3_)" identifier (argument_list "(1,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" ( (pointer_expression "*unaff_s2" * identifier) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" else (compound_statement "{\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" { (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" ( (pointer_expression "*unaff_s2" * identifier) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) }))) (labeled_statement "LAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;" statement_identifier : (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" identifier = (binary_expression "unaff_s5 + 1" identifier + number_literal)) ;)) (expression_statement "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;" (assignment_expression "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puStack_38 = puStack_38 + 3;" (assignment_expression "puStack_38 = puStack_38 + 3" identifier = (binary_expression "puStack_38 + 3" identifier + number_literal)) ;) (expression_statement "pcVar3 = param_1;" (assignment_expression "pcVar3 = param_1" identifier = identifier) ;) }) while (parenthesized_expression "(param_1 != unaff_s5)" ( (binary_expression "param_1 != unaff_s5" identifier != identifier) )) ;) })) }))) (return_statement "return pcVar3;" return identifier ;) })) (if_statement "if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }" if (parenthesized_expression "(((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c)))" ( (binary_expression "((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))" (parenthesized_expression "((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0))" ( (binary_expression "(*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)" (parenthesized_expression "(*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0')" ( (binary_expression "*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0'" (pointer_expression "*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9)" * (cast_expression "(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9)" ( (binary_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9" (pointer_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" * (cast_expression "(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(pcVar4 + 0x3d8b40) + 8)" ( (binary_expression "**(int **)(pcVar4 + 0x3d8b40) + 8" (pointer_expression "**(int **)(pcVar4 + 0x3d8b40)" * (pointer_expression "*(int **)(pcVar4 + 0x3d8b40)" * (cast_expression "(int **)(pcVar4 + 0x3d8b40)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8b40)" ( (binary_expression "pcVar4 + 0x3d8b40" identifier + number_literal) ))))) + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)" ( (binary_expression "(*(uint *)(puVar8 + 0x28) & 0xe000) != 0" (parenthesized_expression "(*(uint *)(puVar8 + 0x28) & 0xe000)" ( (binary_expression "*(uint *)(puVar8 + 0x28) & 0xe000" (pointer_expression "*(uint *)(puVar8 + 0x28)" * (cast_expression "(uint *)(puVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x28)" ( (binary_expression "puVar8 + 0x28" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) || (parenthesized_expression "(-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))" ( (binary_expression "-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c)" number_literal < (pointer_expression "*(int *)(*(int *)(puVar8 + 8) + 0x2c)" * (cast_expression "(int *)(*(int *)(puVar8 + 8) + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar8 + 8) + 0x2c)" ( (binary_expression "*(int *)(puVar8 + 8) + 0x2c" (pointer_expression "*(int *)(puVar8 + 8)" * (cast_expression "(int *)(puVar8 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 8)" ( (binary_expression "puVar8 + 8" identifier + number_literal) )))) + number_literal) ))))) ))) )) (compound_statement "{\n          iVar2 = piVar5[5];\n        }" { (expression_statement "iVar2 = piVar5[5];" (assignment_expression "iVar2 = piVar5[5]" identifier = (subscript_expression "piVar5[5]" identifier [ number_literal ])) ;) }) (else_clause "else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }" else (compound_statement "{\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }" { (if_statement "if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }" if (parenthesized_expression "((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000)" ( (binary_expression "(*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000" (parenthesized_expression "(*(uint *)(puVar8 + 0x28) & 0x70000000)" ( (binary_expression "*(uint *)(puVar8 + 0x28) & 0x70000000" (pointer_expression "*(uint *)(puVar8 + 0x28)" * (cast_expression "(uint *)(puVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x28)" ( (binary_expression "puVar8 + 0x28" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n            return (code *)0x1;\n          }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "iVar2 = piVar5[5];" (assignment_expression "iVar2 = piVar5[5]" identifier = (subscript_expression "piVar5[5]" identifier [ number_literal ])) ;) }))) (if_statement "if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }" { (expression_statement "piVar5 = (int *)(puVar8 + 0x1c);" (assignment_expression "piVar5 = (int *)(puVar8 + 0x1c)" identifier = (cast_expression "(int *)(puVar8 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x1c)" ( (binary_expression "puVar8 + 0x1c" identifier + number_literal) )))) ;) }) (else_clause "else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }" else (compound_statement "{\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }" { (expression_statement "piVar5 = (int *)(puVar8 + 0x1c);" (assignment_expression "piVar5 = (int *)(puVar8 + 0x1c)" identifier = (cast_expression "(int *)(puVar8 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x1c)" ( (binary_expression "puVar8 + 0x1c" identifier + number_literal) )))) ;) (if_statement "if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }" if (parenthesized_expression "(*(int *)(iVar2 + 0x8c) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x8c) != 0" (pointer_expression "*(int *)(iVar2 + 0x8c)" * (cast_expression "(int *)(iVar2 + 0x8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x8c)" ( (binary_expression "iVar2 + 0x8c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }" { (expression_statement "iVar2 = *(int *)(puVar8 + 0x50);" (assignment_expression "iVar2 = *(int *)(puVar8 + 0x50)" identifier = (pointer_expression "*(int *)(puVar8 + 0x50)" * (cast_expression "(int *)(puVar8 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x50)" ( (binary_expression "puVar8 + 0x50" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }" statement_identifier : (if_statement "if (iVar2 == -1) {\n              return (code *)0x1;\n            }" if (parenthesized_expression "(iVar2 == -1)" ( (binary_expression "iVar2 == -1" identifier == number_literal) )) (compound_statement "{\n              return (code *)0x1;\n            }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) }))) (expression_statement "pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);" (assignment_expression "pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" identifier = (cast_expression "(code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" identifier (argument_list "(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" ( identifier , (binary_expression "*(int *)(puVar8 + 0x14) != 0" (pointer_expression "*(int *)(puVar8 + 0x14)" * (cast_expression "(int *)(puVar8 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x14)" ( (binary_expression "puVar8 + 0x14" identifier + number_literal) )))) != number_literal) , number_literal ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) }))) (do_statement "do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);" do (compound_statement "{\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        }" { (if_statement "if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }" if (parenthesized_expression "(*piVar5 == 0)" ( (binary_expression "*piVar5 == 0" (pointer_expression "*piVar5" * identifier) == number_literal) )) (compound_statement "{\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }" { (expression_statement "iVar2 = piVar5[1];" (assignment_expression "iVar2 = piVar5[1]" identifier = (subscript_expression "piVar5[1]" identifier [ number_literal ])) ;) (goto_statement "goto LAB_000e8f24;" goto statement_identifier ;) })) (expression_statement "piVar5 = (int *)piVar5[2];" (assignment_expression "piVar5 = (int *)piVar5[2]" identifier = (cast_expression "(int *)piVar5[2]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar5[2]" identifier [ number_literal ]))) ;) }) while (parenthesized_expression "(piVar5 != (int *)0x0)" ( (binary_expression "piVar5 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) })) (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }" if (parenthesized_expression "(((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c)))" ( (binary_expression "((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))" (parenthesized_expression "((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0))" ( (binary_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)" (parenthesized_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0')" ( (binary_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0'" (pointer_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" * (cast_expression "(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((*(uint *)(param_1 + 0x28) & 0xe000) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x28) & 0xe000) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x28) & 0xe000)" ( (binary_expression "*(uint *)(param_1 + 0x28) & 0xe000" (pointer_expression "*(uint *)(param_1 + 0x28)" * (cast_expression "(uint *)(param_1 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) || (parenthesized_expression "(-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))" ( (binary_expression "-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c)" number_literal < (pointer_expression "*(int *)(*(int *)(param_1 + 8) + 0x2c)" * (cast_expression "(int *)(*(int *)(param_1 + 8) + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 8) + 0x2c)" ( (binary_expression "*(int *)(param_1 + 8) + 0x2c" (pointer_expression "*(int *)(param_1 + 8)" * (cast_expression "(int *)(param_1 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) + number_literal) ))))) ))) )) (compound_statement "{\n      iVar2 = param_4[5];\n    }" { (expression_statement "iVar2 = param_4[5];" (assignment_expression "iVar2 = param_4[5]" identifier = (subscript_expression "param_4[5]" identifier [ number_literal ])) ;) }) (else_clause "else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }" else (compound_statement "{\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }" { (if_statement "if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }" if (parenthesized_expression "((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000)" ( (binary_expression "(*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000" (parenthesized_expression "(*(uint *)(param_1 + 0x28) & 0x70000000)" ( (binary_expression "*(uint *)(param_1 + 0x28) & 0x70000000" (pointer_expression "*(uint *)(param_1 + 0x28)" * (cast_expression "(uint *)(param_1 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n        return (code *)0x1;\n      }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "iVar2 = param_4[5];" (assignment_expression "iVar2 = param_4[5]" identifier = (subscript_expression "param_4[5]" identifier [ number_literal ])) ;) }))) (if_statement "if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      pcVar3 = param_1 + 0x1c;\n    }" { (expression_statement "pcVar3 = param_1 + 0x1c;" (assignment_expression "pcVar3 = param_1 + 0x1c" identifier = (binary_expression "param_1 + 0x1c" identifier + number_literal)) ;) }) (else_clause "else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }" else (compound_statement "{\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }" { (expression_statement "pcVar3 = param_1 + 0x1c;" (assignment_expression "pcVar3 = param_1 + 0x1c" identifier = (binary_expression "param_1 + 0x1c" identifier + number_literal)) ;) (if_statement "if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }" if (parenthesized_expression "(*(int *)(iVar2 + 0x8c) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x8c) != 0" (pointer_expression "*(int *)(iVar2 + 0x8c)" * (cast_expression "(int *)(iVar2 + 0x8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x8c)" ( (binary_expression "iVar2 + 0x8c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }" { (expression_statement "iVar2 = *(int *)(param_1 + 0x50);" (assignment_expression "iVar2 = *(int *)(param_1 + 0x50)" identifier = (pointer_expression "*(int *)(param_1 + 0x50)" * (cast_expression "(int *)(param_1 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }" statement_identifier : (if_statement "if (iVar2 == -1) {\n          return (code *)0x1;\n        }" if (parenthesized_expression "(iVar2 == -1)" ( (binary_expression "iVar2 == -1" identifier == number_literal) )) (compound_statement "{\n          return (code *)0x1;\n        }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) }))) (expression_statement "pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);" (assignment_expression "pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0)" identifier = (cast_expression "(code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0)" identifier (argument_list "(param_1,*(int *)(param_1 + 0x14) != 0,0)" ( identifier , (binary_expression "*(int *)(param_1 + 0x14) != 0" (pointer_expression "*(int *)(param_1 + 0x14)" * (cast_expression "(int *)(param_1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) != number_literal) , number_literal ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) }))) (do_statement "do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);" do (compound_statement "{\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    }" { (if_statement "if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }" if (parenthesized_expression "(*(int *)pcVar3 == 0)" ( (binary_expression "*(int *)pcVar3 == 0" (pointer_expression "*(int *)pcVar3" * (cast_expression "(int *)pcVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }" { (expression_statement "iVar2 = *(int *)(pcVar3 + 4);" (assignment_expression "iVar2 = *(int *)(pcVar3 + 4)" identifier = (pointer_expression "*(int *)(pcVar3 + 4)" * (cast_expression "(int *)(pcVar3 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 4)" ( (binary_expression "pcVar3 + 4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000e8d84;" goto statement_identifier ;) })) (expression_statement "pcVar3 = *(code **)(pcVar3 + 8);" (assignment_expression "pcVar3 = *(code **)(pcVar3 + 8)" identifier = (pointer_expression "*(code **)(pcVar3 + 8)" * (cast_expression "(code **)(pcVar3 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 8)" ( (binary_expression "pcVar3 + 8" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(pcVar3 != (code *)0x0)" ( (binary_expression "pcVar3 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) })) (expression_statement "PTR_do_gold_unreachable_004c1a30 = pcVar4;" (assignment_expression "PTR_do_gold_unreachable_004c1a30 = pcVar4" identifier = identifier) ;) (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })))
(translation_unit "/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */\n/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */\n/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */\n/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */\n/* DWARF original prototype: bool should_apply_static_reloc(Relocate * this, Mips_symbol<32> * gsym,\n   uint r_type, Output_section * output_section, Target_mips<32,_false> * target) */\n\nbool __thiscall\nanon_unknown.dwarf_29466b::Target_mips<32,_false>::Relocate::should_apply_static_reloc\n          (Relocate *this,Mips_symbol<32> *gsym,uint r_type,Output_section *output_section,\n          Target_mips<32,_false> *target)\n\n{\n  byte bVar1;\n  int iVar2;\n  Valtype VVar3;\n  bool bVar10;\n  bool *pbVar4;\n  uint uVar5;\n  Got_offset_list *pGVar6;\n  uint uVar7;\n  Relocate *pRVar8;\n  int *piVar9;\n  undefined1 uVar11;\n  Relocate *pRVar12;\n  Relocate *pRVar13;\n  Relocate *pRVar14;\n  int *extraout_v1;\n  int *piVar15;\n  Symbol *sym;\n  int *piVar16;\n  undefined *puVar17;\n  Relocate *pRVar18;\n  uint uVar19;\n  int iVar20;\n  Output_section *pOVar21;\n  Output_section *pOVar22;\n  Output_section *pOVar23;\n  Relocate *pRVar24;\n  Relocate *in_t1;\n  Relocate *pRVar25;\n  Relocate *unaff_s2;\n  Relocate *pRVar26;\n  Relocate *unaff_s5;\n  _func_int_varargs *p_Var27;\n  uint *puVar28;\n  undefined1 *puVar29;\n  uint *unaff_s7;\n  uint *puVar30;\n  code *pcVar31;\n  _func_int_varargs *p_Var32;\n  _func_int_varargs *p_Var33;\n  code *pcVar34;\n  code *pcVar35;\n  _func_int_varargs *unaff_s8;\n  _func_int_varargs *p_Var36;\n  code *pcVar37;\n  code *pcVar38;\n  undefined1 auStack_350 [8];\n  _func_int_varargs *p_Stack_348;\n  Relocate *pRStack_344;\n  uint uStack_340;\n  Relocate *pRStack_33c;\n  int iStack_338;\n  Relocate *pRStack_330;\n  code *pcStack_32c;\n  Relocate *pRStack_328;\n  Relocate *pRStack_324;\n  Output_section *pOStack_320;\n  Relocate *pRStack_31c;\n  uint *puStack_318;\n  uint uStack_314;\n  _func_int_varargs *p_Stack_310;\n  code *pcStack_30c;\n  int iStack_2f8;\n  Relocate *pRStack_2f4;\n  code *pcStack_2f0;\n  _func_int_varargs *p_Stack_2ec;\n  uint uStack_2e8;\n  char cStack_2e1;\n  Relocate *pRStack_2e0;\n  Relocate *pRStack_2dc;\n  Relocate *pRStack_2d8;\n  int iStack_2d4;\n  code *pcStack_2d0;\n  Relocate *pRStack_2cc;\n  Relocate *pRStack_2c8;\n  Relocate *pRStack_2c4;\n  Output_section *pOStack_2c0;\n  Relocate *pRStack_2bc;\n  uint *puStack_2b8;\n  uint uStack_2b4;\n  _func_int_varargs *p_Stack_2b0;\n  code *pcStack_2ac;\n  undefined4 uStack_298;\n  int iStack_294;\n  code *pcStack_290;\n  Relocate *pRStack_28c;\n  uint uStack_288;\n  byte bStack_281;\n  Relocate *pRStack_280;\n  Relocate *pRStack_27c;\n  Relocate *pRStack_278;\n  Relocate *pRStack_274;\n  int iStack_270;\n  uint uStack_268;\n  code *pcStack_264;\n  Relocate *pRStack_260;\n  Relocate *pRStack_25c;\n  Output_section *pOStack_258;\n  Relocate *pRStack_254;\n  uint *puStack_250;\n  uint uStack_24c;\n  _func_int_varargs *p_Stack_248;\n  code *pcStack_244;\n  undefined4 uStack_230;\n  Relocate *pRStack_22c;\n  code *pcStack_228;\n  Relocate *pRStack_224;\n  uint uStack_220;\n  byte bStack_219;\n  Relocate *pRStack_218;\n  Relocate *pRStack_214;\n  Relocate *pRStack_210;\n  Relocate *pRStack_20c;\n  Relocate *pRStack_208;\n  code *pcStack_204;\n  Relocate *pRStack_200;\n  Relocate *pRStack_1fc;\n  Output_section *pOStack_1f8;\n  Relocate *pRStack_1f4;\n  uint *puStack_1f0;\n  uint *puStack_1ec;\n  _func_int_varargs *p_Stack_1e8;\n  code *pcStack_1e4;\n  undefined4 uStack_1d0;\n  int iStack_1cc;\n  code *pcStack_1c8;\n  Relocate *pRStack_1c4;\n  uint uStack_1c0;\n  byte bStack_1b9;\n  Relocate *pRStack_1b8;\n  Relocate *pRStack_1b4;\n  Relocate *pRStack_1b0;\n  Relocate *pRStack_1ac;\n  Relocate *pRStack_1a8;\n  uint uStack_1a0;\n  code *pcStack_19c;\n  Relocate *pRStack_198;\n  Relocate *pRStack_194;\n  Output_section *pOStack_190;\n  Relocate *pRStack_18c;\n  uint uStack_188;\n  uint *puStack_184;\n  _func_int_varargs *p_Stack_180;\n  code *pcStack_17c;\n  undefined4 uStack_168;\n  Relocate *pRStack_164;\n  code *pcStack_160;\n  Relocate *pRStack_15c;\n  uint uStack_158;\n  byte bStack_151;\n  Relocate *pRStack_150;\n  Relocate *pRStack_14c;\n  Relocate *pRStack_148;\n  Relocate *pRStack_144;\n  undefined1 *puStack_140;\n  code *pcStack_13c;\n  Relocate *pRStack_138;\n  Relocate *pRStack_134;\n  Output_section *pOStack_130;\n  Relocate *pRStack_12c;\n  uint uStack_128;\n  uint *puStack_124;\n  _func_int_varargs *p_Stack_120;\n  code *pcStack_11c;\n  undefined4 uStack_108;\n  int iStack_104;\n  code *pcStack_100;\n  Relocate *pRStack_fc;\n  uint uStack_f8;\n  byte bStack_f1;\n  Relocate *pRStack_f0;\n  Relocate *pRStack_ec;\n  Relocate *pRStack_e8;\n  Relocate *pRStack_e4;\n  Relocate *pRStack_e0;\n  undefined4 *puStack_d4;\n  Relocate *pRStack_d0;\n  Output_section *pOStack_c8;\n  Relocate *pRStack_c4;\n  uint uStack_c0;\n  uint *puStack_bc;\n  _func_int_varargs *p_Stack_b8;\n  code *pcStack_b4;\n  undefined4 uStack_a0;\n  Relocate *pRStack_9c;\n  code *pcStack_98;\n  Relocate *pRStack_94;\n  uint uStack_90;\n  byte bStack_89;\n  Relocate *pRStack_88;\n  Relocate *pRStack_84;\n  undefined1 *puStack_80;\n  Relocate *pRStack_7c;\n  Symbol *pSStack_78;\n  Output_section *pOStack_74;\n  int iStack_3c;\n  undefined4 *puStack_38;\n  Relocate *pRStack_28;\n  int iStack_24;\n  int iStack_20;\n  \n  if (((*(uint *)(r_type + 0x5c) & 2) == 0) || (this == (Relocate *)0x0)) {\n    return true;\n  }\n  pOVar21 = output_section;\n  if (&gsym[-1].field_0x6f < (undefined1 *)0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (this,(int)(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)]);\n    pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(this,0);\n    pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar35;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar17 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar37 = Target_mips<32,_true>::Relocate::should_apply_static_reloc;\n      sym = (Symbol *)(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8);\n      (*pcVar35)();\n      if (((*(uint *)(puVar17 + 0x5c) & 2) == 0) || (sym == (Symbol *)0x0)) {\n        return true;\n      }\n      pOVar22 = pOVar21;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0) {\n          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);\n          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);\n          pcVar34 = pcVar31 + 0x3e022c;\n          uVar5 = (uint)pcVar37 & 0xff;\n          pOVar23 = pOVar22;\n          pcStack_98 = pcVar34;\n          pSStack_78 = sym;\n          pOStack_74 = pOVar21;\n          if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }\nLAB_000e91d0:\n          return SUB41(pRVar12,0);\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)) {\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        else {\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        if (iVar2 == 0) {\n          pGVar6 = &sym->got_offsets_;\n        }\n        else {\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }\n        do {\n          if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }\n          pGVar6 = pGVar6->got_next_;\n        } while (pGVar6 != (Got_offset_list *)0x0);\n      }\n      return true;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((this[5].calculated_value_ & 0xe000) != 0)) ||\n       (-1 < *(int *)(this[1].calculated_value_ + 0x2c))) {\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }\n    else {\n      if ((this[5].calculated_value_ & 0x70000000) != 0x20000000) {\n        return true;\n      }\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }\n    if (iVar2 == 0) {\n      pbVar4 = &this[3].calculate_only_;\n    }\n    else {\n      pbVar4 = &this[3].calculate_only_;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        VVar3 = this[10].calculated_value_;\nLAB_000e8d84:\n        if (VVar3 == 0xffffffff) {\n          return true;\n        }\n        bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);\n        return bVar10;\n      }\n    }\n    do {\n      if (*(int *)pbVar4 == 0) {\n        VVar3 = *(Valtype *)(pbVar4 + 4);\n        goto LAB_000e8d84;\n      }\n      pbVar4 = *(bool **)(pbVar4 + 8);\n    } while (pbVar4 != (bool *)0x0);\n  }\n  PTR_do_gold_unreachable_004c1a30 = pcVar35;\n  return true;\n}\n\n" comment comment comment comment comment comment comment (declaration "bool __thiscall\nanon_unknown.dwarf_29466b::Target_mips<32,_false>::Relocate::should_apply_static_reloc\n          (Relocate *this,Mips_symbol<32> *gsym,uint r_type,Output_section *output_section,\n          Target_mips<32,_false> *target)\n\n{\n  byte bVar1;" primitive_type (ms_call_modifier "__thiscall" __thiscall) identifier (ERROR ".dwarf_29466b::Target_mips<32" . identifier : : identifier < number_literal) , (ERROR "_false>::Relocate::should_apply_static_reloc\n          (Relocate *this,Mips_symbol<32> *gsym,uint r_type,Output_section *output_section,\n          Target_mips<32,_false> *target)\n\n{\n  byte" identifier > : : identifier : : (function_declarator "should_apply_static_reloc\n          (Relocate *this,Mips_symbol<32> *gsym,uint r_type,Output_section *output_section,\n          Target_mips<32,_false> *target)" identifier (parameter_list "(Relocate *this,Mips_symbol<32> *gsym,uint r_type,Output_section *output_section,\n          Target_mips<32,_false> *target)" ( (parameter_declaration "Relocate *this" type_identifier (pointer_declarator "*this" * identifier)) , (parameter_declaration "Mips_symbol<32> *gsym" type_identifier (ERROR "<32>" < number_literal >) (pointer_declarator "*gsym" * identifier)) , (parameter_declaration "uint r_type" type_identifier identifier) , (parameter_declaration "Output_section *output_section" type_identifier (pointer_declarator "*output_section" * identifier)) , (parameter_declaration "Target_mips" type_identifier) (ERROR "<32" < number_literal) , (parameter_declaration "_false> *target" type_identifier (ERROR ">" >) (pointer_declarator "*target" * identifier)) ))) { identifier) identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "Valtype VVar3;" type_identifier identifier ;) (declaration "bool bVar10;" primitive_type identifier ;) (declaration "bool *pbVar4;" primitive_type (pointer_declarator "*pbVar4" * identifier) ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "Got_offset_list *pGVar6;" type_identifier (pointer_declarator "*pGVar6" * identifier) ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "Relocate *pRVar8;" type_identifier (pointer_declarator "*pRVar8" * identifier) ;) (declaration "int *piVar9;" primitive_type (pointer_declarator "*piVar9" * identifier) ;) (declaration "undefined1 uVar11;" type_identifier identifier ;) (declaration "Relocate *pRVar12;" type_identifier (pointer_declarator "*pRVar12" * identifier) ;) (declaration "Relocate *pRVar13;" type_identifier (pointer_declarator "*pRVar13" * identifier) ;) (declaration "Relocate *pRVar14;" type_identifier (pointer_declarator "*pRVar14" * identifier) ;) (declaration "int *extraout_v1;" primitive_type (pointer_declarator "*extraout_v1" * identifier) ;) (declaration "int *piVar15;" primitive_type (pointer_declarator "*piVar15" * identifier) ;) (declaration "Symbol *sym;" type_identifier (pointer_declarator "*sym" * identifier) ;) (declaration "int *piVar16;" primitive_type (pointer_declarator "*piVar16" * identifier) ;) (declaration "undefined *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "Relocate *pRVar18;" type_identifier (pointer_declarator "*pRVar18" * identifier) ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "Output_section *pOVar21;" type_identifier (pointer_declarator "*pOVar21" * identifier) ;) (declaration "Output_section *pOVar22;" type_identifier (pointer_declarator "*pOVar22" * identifier) ;) (declaration "Output_section *pOVar23;" type_identifier (pointer_declarator "*pOVar23" * identifier) ;) (declaration "Relocate *pRVar24;" type_identifier (pointer_declarator "*pRVar24" * identifier) ;) (declaration "Relocate *in_t1;" type_identifier (pointer_declarator "*in_t1" * identifier) ;) (declaration "Relocate *pRVar25;" type_identifier (pointer_declarator "*pRVar25" * identifier) ;) (declaration "Relocate *unaff_s2;" type_identifier (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "Relocate *pRVar26;" type_identifier (pointer_declarator "*pRVar26" * identifier) ;) (declaration "Relocate *unaff_s5;" type_identifier (pointer_declarator "*unaff_s5" * identifier) ;) (declaration "_func_int_varargs *p_Var27;" type_identifier (pointer_declarator "*p_Var27" * identifier) ;) (declaration "uint *puVar28;" type_identifier (pointer_declarator "*puVar28" * identifier) ;) (declaration "undefined1 *puVar29;" type_identifier (pointer_declarator "*puVar29" * identifier) ;) (declaration "uint *unaff_s7;" type_identifier (pointer_declarator "*unaff_s7" * identifier) ;) (declaration "uint *puVar30;" type_identifier (pointer_declarator "*puVar30" * identifier) ;) (declaration "code *pcVar31;" type_identifier (pointer_declarator "*pcVar31" * identifier) ;) (declaration "_func_int_varargs *p_Var32;" type_identifier (pointer_declarator "*p_Var32" * identifier) ;) (declaration "_func_int_varargs *p_Var33;" type_identifier (pointer_declarator "*p_Var33" * identifier) ;) (declaration "code *pcVar34;" type_identifier (pointer_declarator "*pcVar34" * identifier) ;) (declaration "code *pcVar35;" type_identifier (pointer_declarator "*pcVar35" * identifier) ;) (declaration "_func_int_varargs *unaff_s8;" type_identifier (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "_func_int_varargs *p_Var36;" type_identifier (pointer_declarator "*p_Var36" * identifier) ;) (declaration "code *pcVar37;" type_identifier (pointer_declarator "*pcVar37" * identifier) ;) (declaration "code *pcVar38;" type_identifier (pointer_declarator "*pcVar38" * identifier) ;) (declaration "undefined1 auStack_350 [8];" type_identifier (array_declarator "auStack_350 [8]" identifier [ number_literal ]) ;) (declaration "_func_int_varargs *p_Stack_348;" type_identifier (pointer_declarator "*p_Stack_348" * identifier) ;) (declaration "Relocate *pRStack_344;" type_identifier (pointer_declarator "*pRStack_344" * identifier) ;) (declaration "uint uStack_340;" type_identifier identifier ;) (declaration "Relocate *pRStack_33c;" type_identifier (pointer_declarator "*pRStack_33c" * identifier) ;) (declaration "int iStack_338;" primitive_type identifier ;) (declaration "Relocate *pRStack_330;" type_identifier (pointer_declarator "*pRStack_330" * identifier) ;) (declaration "code *pcStack_32c;" type_identifier (pointer_declarator "*pcStack_32c" * identifier) ;) (declaration "Relocate *pRStack_328;" type_identifier (pointer_declarator "*pRStack_328" * identifier) ;) (declaration "Relocate *pRStack_324;" type_identifier (pointer_declarator "*pRStack_324" * identifier) ;) (declaration "Output_section *pOStack_320;" type_identifier (pointer_declarator "*pOStack_320" * identifier) ;) (declaration "Relocate *pRStack_31c;" type_identifier (pointer_declarator "*pRStack_31c" * identifier) ;) (declaration "uint *puStack_318;" type_identifier (pointer_declarator "*puStack_318" * identifier) ;) (declaration "uint uStack_314;" type_identifier identifier ;) (declaration "_func_int_varargs *p_Stack_310;" type_identifier (pointer_declarator "*p_Stack_310" * identifier) ;) (declaration "code *pcStack_30c;" type_identifier (pointer_declarator "*pcStack_30c" * identifier) ;) (declaration "int iStack_2f8;" primitive_type identifier ;) (declaration "Relocate *pRStack_2f4;" type_identifier (pointer_declarator "*pRStack_2f4" * identifier) ;) (declaration "code *pcStack_2f0;" type_identifier (pointer_declarator "*pcStack_2f0" * identifier) ;) (declaration "_func_int_varargs *p_Stack_2ec;" type_identifier (pointer_declarator "*p_Stack_2ec" * identifier) ;) (declaration "uint uStack_2e8;" type_identifier identifier ;) (declaration "char cStack_2e1;" primitive_type identifier ;) (declaration "Relocate *pRStack_2e0;" type_identifier (pointer_declarator "*pRStack_2e0" * identifier) ;) (declaration "Relocate *pRStack_2dc;" type_identifier (pointer_declarator "*pRStack_2dc" * identifier) ;) (declaration "Relocate *pRStack_2d8;" type_identifier (pointer_declarator "*pRStack_2d8" * identifier) ;) (declaration "int iStack_2d4;" primitive_type identifier ;) (declaration "code *pcStack_2d0;" type_identifier (pointer_declarator "*pcStack_2d0" * identifier) ;) (declaration "Relocate *pRStack_2cc;" type_identifier (pointer_declarator "*pRStack_2cc" * identifier) ;) (declaration "Relocate *pRStack_2c8;" type_identifier (pointer_declarator "*pRStack_2c8" * identifier) ;) (declaration "Relocate *pRStack_2c4;" type_identifier (pointer_declarator "*pRStack_2c4" * identifier) ;) (declaration "Output_section *pOStack_2c0;" type_identifier (pointer_declarator "*pOStack_2c0" * identifier) ;) (declaration "Relocate *pRStack_2bc;" type_identifier (pointer_declarator "*pRStack_2bc" * identifier) ;) (declaration "uint *puStack_2b8;" type_identifier (pointer_declarator "*puStack_2b8" * identifier) ;) (declaration "uint uStack_2b4;" type_identifier identifier ;) (declaration "_func_int_varargs *p_Stack_2b0;" type_identifier (pointer_declarator "*p_Stack_2b0" * identifier) ;) (declaration "code *pcStack_2ac;" type_identifier (pointer_declarator "*pcStack_2ac" * identifier) ;) (declaration "undefined4 uStack_298;" type_identifier identifier ;) (declaration "int iStack_294;" primitive_type identifier ;) (declaration "code *pcStack_290;" type_identifier (pointer_declarator "*pcStack_290" * identifier) ;) (declaration "Relocate *pRStack_28c;" type_identifier (pointer_declarator "*pRStack_28c" * identifier) ;) (declaration "uint uStack_288;" type_identifier identifier ;) (declaration "byte bStack_281;" type_identifier identifier ;) (declaration "Relocate *pRStack_280;" type_identifier (pointer_declarator "*pRStack_280" * identifier) ;) (declaration "Relocate *pRStack_27c;" type_identifier (pointer_declarator "*pRStack_27c" * identifier) ;) (declaration "Relocate *pRStack_278;" type_identifier (pointer_declarator "*pRStack_278" * identifier) ;) (declaration "Relocate *pRStack_274;" type_identifier (pointer_declarator "*pRStack_274" * identifier) ;) (declaration "int iStack_270;" primitive_type identifier ;) (declaration "uint uStack_268;" type_identifier identifier ;) (declaration "code *pcStack_264;" type_identifier (pointer_declarator "*pcStack_264" * identifier) ;) (declaration "Relocate *pRStack_260;" type_identifier (pointer_declarator "*pRStack_260" * identifier) ;) (declaration "Relocate *pRStack_25c;" type_identifier (pointer_declarator "*pRStack_25c" * identifier) ;) (declaration "Output_section *pOStack_258;" type_identifier (pointer_declarator "*pOStack_258" * identifier) ;) (declaration "Relocate *pRStack_254;" type_identifier (pointer_declarator "*pRStack_254" * identifier) ;) (declaration "uint *puStack_250;" type_identifier (pointer_declarator "*puStack_250" * identifier) ;) (declaration "uint uStack_24c;" type_identifier identifier ;) (declaration "_func_int_varargs *p_Stack_248;" type_identifier (pointer_declarator "*p_Stack_248" * identifier) ;) (declaration "code *pcStack_244;" type_identifier (pointer_declarator "*pcStack_244" * identifier) ;) (declaration "undefined4 uStack_230;" type_identifier identifier ;) (declaration "Relocate *pRStack_22c;" type_identifier (pointer_declarator "*pRStack_22c" * identifier) ;) (declaration "code *pcStack_228;" type_identifier (pointer_declarator "*pcStack_228" * identifier) ;) (declaration "Relocate *pRStack_224;" type_identifier (pointer_declarator "*pRStack_224" * identifier) ;) (declaration "uint uStack_220;" type_identifier identifier ;) (declaration "byte bStack_219;" type_identifier identifier ;) (declaration "Relocate *pRStack_218;" type_identifier (pointer_declarator "*pRStack_218" * identifier) ;) (declaration "Relocate *pRStack_214;" type_identifier (pointer_declarator "*pRStack_214" * identifier) ;) (declaration "Relocate *pRStack_210;" type_identifier (pointer_declarator "*pRStack_210" * identifier) ;) (declaration "Relocate *pRStack_20c;" type_identifier (pointer_declarator "*pRStack_20c" * identifier) ;) (declaration "Relocate *pRStack_208;" type_identifier (pointer_declarator "*pRStack_208" * identifier) ;) (declaration "code *pcStack_204;" type_identifier (pointer_declarator "*pcStack_204" * identifier) ;) (declaration "Relocate *pRStack_200;" type_identifier (pointer_declarator "*pRStack_200" * identifier) ;) (declaration "Relocate *pRStack_1fc;" type_identifier (pointer_declarator "*pRStack_1fc" * identifier) ;) (declaration "Output_section *pOStack_1f8;" type_identifier (pointer_declarator "*pOStack_1f8" * identifier) ;) (declaration "Relocate *pRStack_1f4;" type_identifier (pointer_declarator "*pRStack_1f4" * identifier) ;) (declaration "uint *puStack_1f0;" type_identifier (pointer_declarator "*puStack_1f0" * identifier) ;) (declaration "uint *puStack_1ec;" type_identifier (pointer_declarator "*puStack_1ec" * identifier) ;) (declaration "_func_int_varargs *p_Stack_1e8;" type_identifier (pointer_declarator "*p_Stack_1e8" * identifier) ;) (declaration "code *pcStack_1e4;" type_identifier (pointer_declarator "*pcStack_1e4" * identifier) ;) (declaration "undefined4 uStack_1d0;" type_identifier identifier ;) (declaration "int iStack_1cc;" primitive_type identifier ;) (declaration "code *pcStack_1c8;" type_identifier (pointer_declarator "*pcStack_1c8" * identifier) ;) (declaration "Relocate *pRStack_1c4;" type_identifier (pointer_declarator "*pRStack_1c4" * identifier) ;) (declaration "uint uStack_1c0;" type_identifier identifier ;) (declaration "byte bStack_1b9;" type_identifier identifier ;) (declaration "Relocate *pRStack_1b8;" type_identifier (pointer_declarator "*pRStack_1b8" * identifier) ;) (declaration "Relocate *pRStack_1b4;" type_identifier (pointer_declarator "*pRStack_1b4" * identifier) ;) (declaration "Relocate *pRStack_1b0;" type_identifier (pointer_declarator "*pRStack_1b0" * identifier) ;) (declaration "Relocate *pRStack_1ac;" type_identifier (pointer_declarator "*pRStack_1ac" * identifier) ;) (declaration "Relocate *pRStack_1a8;" type_identifier (pointer_declarator "*pRStack_1a8" * identifier) ;) (declaration "uint uStack_1a0;" type_identifier identifier ;) (declaration "code *pcStack_19c;" type_identifier (pointer_declarator "*pcStack_19c" * identifier) ;) (declaration "Relocate *pRStack_198;" type_identifier (pointer_declarator "*pRStack_198" * identifier) ;) (declaration "Relocate *pRStack_194;" type_identifier (pointer_declarator "*pRStack_194" * identifier) ;) (declaration "Output_section *pOStack_190;" type_identifier (pointer_declarator "*pOStack_190" * identifier) ;) (declaration "Relocate *pRStack_18c;" type_identifier (pointer_declarator "*pRStack_18c" * identifier) ;) (declaration "uint uStack_188;" type_identifier identifier ;) (declaration "uint *puStack_184;" type_identifier (pointer_declarator "*puStack_184" * identifier) ;) (declaration "_func_int_varargs *p_Stack_180;" type_identifier (pointer_declarator "*p_Stack_180" * identifier) ;) (declaration "code *pcStack_17c;" type_identifier (pointer_declarator "*pcStack_17c" * identifier) ;) (declaration "undefined4 uStack_168;" type_identifier identifier ;) (declaration "Relocate *pRStack_164;" type_identifier (pointer_declarator "*pRStack_164" * identifier) ;) (declaration "code *pcStack_160;" type_identifier (pointer_declarator "*pcStack_160" * identifier) ;) (declaration "Relocate *pRStack_15c;" type_identifier (pointer_declarator "*pRStack_15c" * identifier) ;) (declaration "uint uStack_158;" type_identifier identifier ;) (declaration "byte bStack_151;" type_identifier identifier ;) (declaration "Relocate *pRStack_150;" type_identifier (pointer_declarator "*pRStack_150" * identifier) ;) (declaration "Relocate *pRStack_14c;" type_identifier (pointer_declarator "*pRStack_14c" * identifier) ;) (declaration "Relocate *pRStack_148;" type_identifier (pointer_declarator "*pRStack_148" * identifier) ;) (declaration "Relocate *pRStack_144;" type_identifier (pointer_declarator "*pRStack_144" * identifier) ;) (declaration "undefined1 *puStack_140;" type_identifier (pointer_declarator "*puStack_140" * identifier) ;) (declaration "code *pcStack_13c;" type_identifier (pointer_declarator "*pcStack_13c" * identifier) ;) (declaration "Relocate *pRStack_138;" type_identifier (pointer_declarator "*pRStack_138" * identifier) ;) (declaration "Relocate *pRStack_134;" type_identifier (pointer_declarator "*pRStack_134" * identifier) ;) (declaration "Output_section *pOStack_130;" type_identifier (pointer_declarator "*pOStack_130" * identifier) ;) (declaration "Relocate *pRStack_12c;" type_identifier (pointer_declarator "*pRStack_12c" * identifier) ;) (declaration "uint uStack_128;" type_identifier identifier ;) (declaration "uint *puStack_124;" type_identifier (pointer_declarator "*puStack_124" * identifier) ;) (declaration "_func_int_varargs *p_Stack_120;" type_identifier (pointer_declarator "*p_Stack_120" * identifier) ;) (declaration "code *pcStack_11c;" type_identifier (pointer_declarator "*pcStack_11c" * identifier) ;) (declaration "undefined4 uStack_108;" type_identifier identifier ;) (declaration "int iStack_104;" primitive_type identifier ;) (declaration "code *pcStack_100;" type_identifier (pointer_declarator "*pcStack_100" * identifier) ;) (declaration "Relocate *pRStack_fc;" type_identifier (pointer_declarator "*pRStack_fc" * identifier) ;) (declaration "uint uStack_f8;" type_identifier identifier ;) (declaration "byte bStack_f1;" type_identifier identifier ;) (declaration "Relocate *pRStack_f0;" type_identifier (pointer_declarator "*pRStack_f0" * identifier) ;) (declaration "Relocate *pRStack_ec;" type_identifier (pointer_declarator "*pRStack_ec" * identifier) ;) (declaration "Relocate *pRStack_e8;" type_identifier (pointer_declarator "*pRStack_e8" * identifier) ;) (declaration "Relocate *pRStack_e4;" type_identifier (pointer_declarator "*pRStack_e4" * identifier) ;) (declaration "Relocate *pRStack_e0;" type_identifier (pointer_declarator "*pRStack_e0" * identifier) ;) (declaration "undefined4 *puStack_d4;" type_identifier (pointer_declarator "*puStack_d4" * identifier) ;) (declaration "Relocate *pRStack_d0;" type_identifier (pointer_declarator "*pRStack_d0" * identifier) ;) (declaration "Output_section *pOStack_c8;" type_identifier (pointer_declarator "*pOStack_c8" * identifier) ;) (declaration "Relocate *pRStack_c4;" type_identifier (pointer_declarator "*pRStack_c4" * identifier) ;) (declaration "uint uStack_c0;" type_identifier identifier ;) (declaration "uint *puStack_bc;" type_identifier (pointer_declarator "*puStack_bc" * identifier) ;) (declaration "_func_int_varargs *p_Stack_b8;" type_identifier (pointer_declarator "*p_Stack_b8" * identifier) ;) (declaration "code *pcStack_b4;" type_identifier (pointer_declarator "*pcStack_b4" * identifier) ;) (declaration "undefined4 uStack_a0;" type_identifier identifier ;) (declaration "Relocate *pRStack_9c;" type_identifier (pointer_declarator "*pRStack_9c" * identifier) ;) (declaration "code *pcStack_98;" type_identifier (pointer_declarator "*pcStack_98" * identifier) ;) (declaration "Relocate *pRStack_94;" type_identifier (pointer_declarator "*pRStack_94" * identifier) ;) (declaration "uint uStack_90;" type_identifier identifier ;) (declaration "byte bStack_89;" type_identifier identifier ;) (declaration "Relocate *pRStack_88;" type_identifier (pointer_declarator "*pRStack_88" * identifier) ;) (declaration "Relocate *pRStack_84;" type_identifier (pointer_declarator "*pRStack_84" * identifier) ;) (declaration "undefined1 *puStack_80;" type_identifier (pointer_declarator "*puStack_80" * identifier) ;) (declaration "Relocate *pRStack_7c;" type_identifier (pointer_declarator "*pRStack_7c" * identifier) ;) (declaration "Symbol *pSStack_78;" type_identifier (pointer_declarator "*pSStack_78" * identifier) ;) (declaration "Output_section *pOStack_74;" type_identifier (pointer_declarator "*pOStack_74" * identifier) ;) (declaration "int iStack_3c;" primitive_type identifier ;) (declaration "undefined4 *puStack_38;" type_identifier (pointer_declarator "*puStack_38" * identifier) ;) (declaration "Relocate *pRStack_28;" type_identifier (pointer_declarator "*pRStack_28" * identifier) ;) (declaration "int iStack_24;" primitive_type identifier ;) (declaration "int iStack_20;" primitive_type identifier ;) (if_statement "if (((*(uint *)(r_type + 0x5c) & 2) == 0) || (this == (Relocate *)0x0)) {\n    return true;\n  }" if (parenthesized_expression "(((*(uint *)(r_type + 0x5c) & 2) == 0) || (this == (Relocate *)0x0))" ( (binary_expression "((*(uint *)(r_type + 0x5c) & 2) == 0) || (this == (Relocate *)0x0)" (parenthesized_expression "((*(uint *)(r_type + 0x5c) & 2) == 0)" ( (binary_expression "(*(uint *)(r_type + 0x5c) & 2) == 0" (parenthesized_expression "(*(uint *)(r_type + 0x5c) & 2)" ( (binary_expression "*(uint *)(r_type + 0x5c) & 2" (pointer_expression "*(uint *)(r_type + 0x5c)" * (cast_expression "(uint *)(r_type + 0x5c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(r_type + 0x5c)" ( (binary_expression "r_type + 0x5c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) || (parenthesized_expression "(this == (Relocate *)0x0)" ( (binary_expression "this == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n    return true;\n  }" { (return_statement "return true;" return true ;) })) (expression_statement "pOVar21 = output_section;" (assignment_expression "pOVar21 = output_section" identifier = identifier) ;) (if_statement "if (&gsym[-1].field_0x6f < (undefined1 *)0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (this,(int)(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)]);\n    pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(this,0);\n    pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" if (parenthesized_expression "(&gsym[-1].field_0x6f < (undefined1 *)0xf9)" ( (binary_expression "&gsym[-1].field_0x6f < (undefined1 *)0xf9" (pointer_expression "&gsym[-1].field_0x6f" & (field_expression "gsym[-1].field_0x6f" (subscript_expression "gsym[-1]" identifier [ number_literal ]) . field_identifier)) < (cast_expression "(undefined1 *)0xf9" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (this,(int)(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)]);\n    pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" { (expression_statement "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (this,(int)(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)]);" (assignment_expression "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (this,(int)(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)])" identifier = (call_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (this,(int)(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)])" (parenthesized_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)" ( (pointer_expression "*(code *)PTR_needs_dynamic_reloc_004c1b58" * (cast_expression "(code *)PTR_needs_dynamic_reloc_004c1b58" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(this,(int)(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)])" ( identifier , (cast_expression "(int)(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)]" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "(&gsym[-1].field_0x6f)[(int)(PTR_s__s_004c1a50 + -0x56e8)]" (parenthesized_expression "(&gsym[-1].field_0x6f)" ( (pointer_expression "&gsym[-1].field_0x6f" & (field_expression "gsym[-1].field_0x6f" (subscript_expression "gsym[-1]" identifier [ number_literal ]) . field_identifier)) )) [ (cast_expression "(int)(PTR_s__s_004c1a50 + -0x56e8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(PTR_s__s_004c1a50 + -0x56e8)" ( (binary_expression "PTR_s__s_004c1a50 + -0x56e8" identifier + number_literal) ))) ]))) )))) ;) (expression_statement "pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;" (assignment_expression "pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30" identifier = (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }) (else_clause "else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(this,0);\n    pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" else (compound_statement "{\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(this,0);\n    pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" { (expression_statement "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(this,0);" (assignment_expression "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(this,0)" identifier = (call_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)(this,0)" (parenthesized_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)" ( (pointer_expression "*(code *)PTR_needs_dynamic_reloc_004c1b58" * (cast_expression "(code *)PTR_needs_dynamic_reloc_004c1b58" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(this,0)" ( identifier , number_literal )))) ;) (expression_statement "pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30;" (assignment_expression "pcVar35 = (code *)PTR_do_gold_unreachable_004c1a30" identifier = (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }))) (if_statement "if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar35;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar17 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar37 = Target_mips<32,_true>::Relocate::should_apply_static_reloc;\n      sym = (Symbol *)(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8);\n      (*pcVar35)();\n      if (((*(uint *)(puVar17 + 0x5c) & 2) == 0) || (sym == (Symbol *)0x0)) {\n        return true;\n      }\n      pOVar22 = pOVar21;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0) {\n          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);\n          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);\n          pcVar34 = pcVar31 + 0x3e022c;\n          uVar5 = (uint)pcVar37 & 0xff;\n          pOVar23 = pOVar22;\n          pcStack_98 = pcVar34;\n          pSStack_78 = sym;\n          pOStack_74 = pOVar21;\n          if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }\nLAB_000e91d0:\n          return SUB41(pRVar12,0);\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)) {\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        else {\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        if (iVar2 == 0) {\n          pGVar6 = &sym->got_offsets_;\n        }\n        else {\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }\n        do {\n          if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }\n          pGVar6 = pGVar6->got_next_;\n        } while (pGVar6 != (Got_offset_list *)0x0);\n      }\n      return true;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((this[5].calculated_value_ & 0xe000) != 0)) ||\n       (-1 < *(int *)(this[1].calculated_value_ + 0x2c))) {\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }\n    else {\n      if ((this[5].calculated_value_ & 0x70000000) != 0x20000000) {\n        return true;\n      }\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }\n    if (iVar2 == 0) {\n      pbVar4 = &this[3].calculate_only_;\n    }\n    else {\n      pbVar4 = &this[3].calculate_only_;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        VVar3 = this[10].calculated_value_;\nLAB_000e8d84:\n        if (VVar3 == 0xffffffff) {\n          return true;\n        }\n        bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);\n        return bVar10;\n      }\n    }\n    do {\n      if (*(int *)pbVar4 == 0) {\n        VVar3 = *(Valtype *)(pbVar4 + 4);\n        goto LAB_000e8d84;\n      }\n      pbVar4 = *(bool **)(pbVar4 + 8);\n    } while (pbVar4 != (bool *)0x0);\n  }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n    PTR_do_gold_unreachable_004c1a30 = pcVar35;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar17 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar37 = Target_mips<32,_true>::Relocate::should_apply_static_reloc;\n      sym = (Symbol *)(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8);\n      (*pcVar35)();\n      if (((*(uint *)(puVar17 + 0x5c) & 2) == 0) || (sym == (Symbol *)0x0)) {\n        return true;\n      }\n      pOVar22 = pOVar21;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0) {\n          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);\n          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);\n          pcVar34 = pcVar31 + 0x3e022c;\n          uVar5 = (uint)pcVar37 & 0xff;\n          pOVar23 = pOVar22;\n          pcStack_98 = pcVar34;\n          pSStack_78 = sym;\n          pOStack_74 = pOVar21;\n          if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }\nLAB_000e91d0:\n          return SUB41(pRVar12,0);\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)) {\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        else {\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        if (iVar2 == 0) {\n          pGVar6 = &sym->got_offsets_;\n        }\n        else {\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }\n        do {\n          if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }\n          pGVar6 = pGVar6->got_next_;\n        } while (pGVar6 != (Got_offset_list *)0x0);\n      }\n      return true;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((this[5].calculated_value_ & 0xe000) != 0)) ||\n       (-1 < *(int *)(this[1].calculated_value_ + 0x2c))) {\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }\n    else {\n      if ((this[5].calculated_value_ & 0x70000000) != 0x20000000) {\n        return true;\n      }\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }\n    if (iVar2 == 0) {\n      pbVar4 = &this[3].calculate_only_;\n    }\n    else {\n      pbVar4 = &this[3].calculate_only_;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        VVar3 = this[10].calculated_value_;\nLAB_000e8d84:\n        if (VVar3 == 0xffffffff) {\n          return true;\n        }\n        bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);\n        return bVar10;\n      }\n    }\n    do {\n      if (*(int *)pbVar4 == 0) {\n        VVar3 = *(Valtype *)(pbVar4 + 4);\n        goto LAB_000e8d84;\n      }\n      pbVar4 = *(bool **)(pbVar4 + 8);\n    } while (pbVar4 != (bool *)0x0);\n  }" { (expression_statement "PTR_do_gold_unreachable_004c1a30 = pcVar35;" (assignment_expression "PTR_do_gold_unreachable_004c1a30 = pcVar35" identifier = identifier) ;) (if_statement "if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar17 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar37 = Target_mips<32,_true>::Relocate::should_apply_static_reloc;\n      sym = (Symbol *)(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8);\n      (*pcVar35)();\n      if (((*(uint *)(puVar17 + 0x5c) & 2) == 0) || (sym == (Symbol *)0x0)) {\n        return true;\n      }\n      pOVar22 = pOVar21;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0) {\n          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);\n          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);\n          pcVar34 = pcVar31 + 0x3e022c;\n          uVar5 = (uint)pcVar37 & 0xff;\n          pOVar23 = pOVar22;\n          pcStack_98 = pcVar34;\n          pSStack_78 = sym;\n          pOStack_74 = pOVar21;\n          if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }\nLAB_000e91d0:\n          return SUB41(pRVar12,0);\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)) {\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        else {\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        if (iVar2 == 0) {\n          pGVar6 = &sym->got_offsets_;\n        }\n        else {\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }\n        do {\n          if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }\n          pGVar6 = pGVar6->got_next_;\n        } while (pGVar6 != (Got_offset_list *)0x0);\n      }\n      return true;\n    }" if (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) == number_literal) )) (compound_statement "{\n      iVar2 = 0x5c;\n      puVar17 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar37 = Target_mips<32,_true>::Relocate::should_apply_static_reloc;\n      sym = (Symbol *)(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8);\n      (*pcVar35)();\n      if (((*(uint *)(puVar17 + 0x5c) & 2) == 0) || (sym == (Symbol *)0x0)) {\n        return true;\n      }\n      pOVar22 = pOVar21;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0) {\n          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);\n          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);\n          pcVar34 = pcVar31 + 0x3e022c;\n          uVar5 = (uint)pcVar37 & 0xff;\n          pOVar23 = pOVar22;\n          pcStack_98 = pcVar34;\n          pSStack_78 = sym;\n          pOStack_74 = pOVar21;\n          if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }\nLAB_000e91d0:\n          return SUB41(pRVar12,0);\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)) {\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        else {\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        if (iVar2 == 0) {\n          pGVar6 = &sym->got_offsets_;\n        }\n        else {\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }\n        do {\n          if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }\n          pGVar6 = pGVar6->got_next_;\n        } while (pGVar6 != (Got_offset_list *)0x0);\n      }\n      return true;\n    }" { (expression_statement "iVar2 = 0x5c;" (assignment_expression "iVar2 = 0x5c" identifier = number_literal) ;) (expression_statement "puVar17 = PTR_s__s_004c1a50 + -0x33c8;" (assignment_expression "puVar17 = PTR_s__s_004c1a50 + -0x33c8" identifier = (binary_expression "PTR_s__s_004c1a50 + -0x33c8" identifier + number_literal)) ;) (expression_statement "pcVar37 = Target_mips<32,_true>::Relocate::should_apply_static_reloc;" (comma_expression "pcVar37 = Target_mips<32,_true>::Relocate" (assignment_expression "pcVar37 = Target_mips<32" identifier = (binary_expression "Target_mips<32" identifier < number_literal)) , (binary_expression "_true>::Relocate" identifier > (ERROR "::" : :) identifier)) (ERROR "::should_apply_static_reloc" : : identifier) ;) (expression_statement "sym = (Symbol *)(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8);" (assignment_expression "sym = (Symbol *)(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8)" identifier = (cast_expression "(Symbol *)(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8)" ( (type_descriptor "Symbol *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8)" ( (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" identifier + number_literal) )))) ;) (expression_statement "(*pcVar35)();" (call_expression "(*pcVar35)()" (parenthesized_expression "(*pcVar35)" ( (pointer_expression "*pcVar35" * identifier) )) (argument_list "()" ( ))) ;) (if_statement "if (((*(uint *)(puVar17 + 0x5c) & 2) == 0) || (sym == (Symbol *)0x0)) {\n        return true;\n      }" if (parenthesized_expression "(((*(uint *)(puVar17 + 0x5c) & 2) == 0) || (sym == (Symbol *)0x0))" ( (binary_expression "((*(uint *)(puVar17 + 0x5c) & 2) == 0) || (sym == (Symbol *)0x0)" (parenthesized_expression "((*(uint *)(puVar17 + 0x5c) & 2) == 0)" ( (binary_expression "(*(uint *)(puVar17 + 0x5c) & 2) == 0" (parenthesized_expression "(*(uint *)(puVar17 + 0x5c) & 2)" ( (binary_expression "*(uint *)(puVar17 + 0x5c) & 2" (pointer_expression "*(uint *)(puVar17 + 0x5c)" * (cast_expression "(uint *)(puVar17 + 0x5c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x5c)" ( (binary_expression "puVar17 + 0x5c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) || (parenthesized_expression "(sym == (Symbol *)0x0)" ( (binary_expression "sym == (Symbol *)0x0" identifier == (cast_expression "(Symbol *)0x0" ( (type_descriptor "Symbol *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n        return true;\n      }" { (return_statement "return true;" return true ;) })) (expression_statement "pOVar22 = pOVar21;" (assignment_expression "pOVar22 = pOVar21" identifier = identifier) ;) (if_statement "if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }" if (parenthesized_expression "(iVar2 - 1U < 0xf9)" ( (binary_expression "iVar2 - 1U < 0xf9" (binary_expression "iVar2 - 1U" identifier - number_literal) < number_literal) )) (compound_statement "{\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }" { (expression_statement "iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();" (assignment_expression "iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))()" identifier = (call_expression "(**(code **)(pcVar35 + 0x3d8ce4))()" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d8ce4))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d8ce4)" * (pointer_expression "*(code **)(pcVar35 + 0x3d8ce4)" * (cast_expression "(code **)(pcVar35 + 0x3d8ce4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d8ce4)" ( (binary_expression "pcVar35 + 0x3d8ce4" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) }) (else_clause "else {\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }" else (compound_statement "{\n        iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();\n      }" { (expression_statement "iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))();" (assignment_expression "iVar2 = (**(code **)(pcVar35 + 0x3d8ce4))()" identifier = (call_expression "(**(code **)(pcVar35 + 0x3d8ce4))()" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d8ce4))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d8ce4)" * (pointer_expression "*(code **)(pcVar35 + 0x3d8ce4)" * (cast_expression "(code **)(pcVar35 + 0x3d8ce4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d8ce4)" ( (binary_expression "pcVar35 + 0x3d8ce4" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) }))) (if_statement "if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0) {\n          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);\n          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);\n          pcVar34 = pcVar31 + 0x3e022c;\n          uVar5 = (uint)pcVar37 & 0xff;\n          pOVar23 = pOVar22;\n          pcStack_98 = pcVar34;\n          pSStack_78 = sym;\n          pOStack_74 = pOVar21;\n          if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }\nLAB_000e91d0:\n          return SUB41(pRVar12,0);\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)) {\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        else {\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        if (iVar2 == 0) {\n          pGVar6 = &sym->got_offsets_;\n        }\n        else {\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }\n        do {\n          if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }\n          pGVar6 = pGVar6->got_next_;\n        } while (pGVar6 != (Got_offset_list *)0x0);\n      }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n        if (*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0) {\n          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);\n          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);\n          pcVar34 = pcVar31 + 0x3e022c;\n          uVar5 = (uint)pcVar37 & 0xff;\n          pOVar23 = pOVar22;\n          pcStack_98 = pcVar34;\n          pSStack_78 = sym;\n          pOStack_74 = pOVar21;\n          if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }\nLAB_000e91d0:\n          return SUB41(pRVar12,0);\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)) {\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        else {\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        if (iVar2 == 0) {\n          pGVar6 = &sym->got_offsets_;\n        }\n        else {\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }\n        do {\n          if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }\n          pGVar6 = pGVar6->got_next_;\n        } while (pGVar6 != (Got_offset_list *)0x0);\n      }" { (if_statement "if (*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0) {\n          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);\n          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);\n          pcVar34 = pcVar31 + 0x3e022c;\n          uVar5 = (uint)pcVar37 & 0xff;\n          pOVar23 = pOVar22;\n          pcStack_98 = pcVar34;\n          pSStack_78 = sym;\n          pOStack_74 = pOVar21;\n          if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }\nLAB_000e91d0:\n          return SUB41(pRVar12,0);\n        }" if (parenthesized_expression "(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0)" ( (binary_expression "*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) == 0" (pointer_expression "*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8)" * (cast_expression "(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(pcVar35 + 0x3d8b40) + 8)" ( (binary_expression "**(int **)(pcVar35 + 0x3d8b40) + 8" (pointer_expression "**(int **)(pcVar35 + 0x3d8b40)" * (pointer_expression "*(int **)(pcVar35 + 0x3d8b40)" * (cast_expression "(int **)(pcVar35 + 0x3d8b40)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d8b40)" ( (binary_expression "pcVar35 + 0x3d8b40" identifier + number_literal) ))))) + number_literal) )))) == number_literal) )) (compound_statement "{\n          pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);\n          (*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);\n          pcVar34 = pcVar31 + 0x3e022c;\n          uVar5 = (uint)pcVar37 & 0xff;\n          pOVar23 = pOVar22;\n          pcStack_98 = pcVar34;\n          pSStack_78 = sym;\n          pOStack_74 = pOVar21;\n          if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }\nLAB_000e91d0:\n          return SUB41(pRVar12,0);\n        }" { (expression_statement "pcVar31 = *(code **)(pcVar35 + 0x3d8bbc);" (assignment_expression "pcVar31 = *(code **)(pcVar35 + 0x3d8bbc)" identifier = (pointer_expression "*(code **)(pcVar35 + 0x3d8bbc)" * (cast_expression "(code **)(pcVar35 + 0x3d8bbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d8bbc)" ( (binary_expression "pcVar35 + 0x3d8bbc" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8);" (call_expression "(*pcVar31)(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8)" (parenthesized_expression "(*pcVar31)" ( (pointer_expression "*pcVar31" * identifier) )) (argument_list "(*(int *)(pcVar35 + 0x3d8408) + -0x9b8,0x5c,\n                     *(int *)(pcVar35 + 0x3d8bdc) + -0x33c8)" ( (binary_expression "*(int *)(pcVar35 + 0x3d8408) + -0x9b8" (pointer_expression "*(int *)(pcVar35 + 0x3d8408)" * (cast_expression "(int *)(pcVar35 + 0x3d8408)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d8408)" ( (binary_expression "pcVar35 + 0x3d8408" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + 0x3d8bdc) + -0x33c8" (pointer_expression "*(int *)(pcVar35 + 0x3d8bdc)" * (cast_expression "(int *)(pcVar35 + 0x3d8bdc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d8bdc)" ( (binary_expression "pcVar35 + 0x3d8bdc" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar34 = pcVar31 + 0x3e022c;" (assignment_expression "pcVar34 = pcVar31 + 0x3e022c" identifier = (binary_expression "pcVar31 + 0x3e022c" identifier + number_literal)) ;) (expression_statement "uVar5 = (uint)pcVar37 & 0xff;" (assignment_expression "uVar5 = (uint)pcVar37 & 0xff" identifier = (binary_expression "(uint)pcVar37 & 0xff" (cast_expression "(uint)pcVar37" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "pOVar23 = pOVar22;" (assignment_expression "pOVar23 = pOVar22" identifier = identifier) ;) (expression_statement "pcStack_98 = pcVar34;" (assignment_expression "pcStack_98 = pcVar34" identifier = identifier) ;) (expression_statement "pSStack_78 = sym;" (assignment_expression "pSStack_78 = sym" identifier = identifier) ;) (expression_statement "pOStack_74 = pOVar21;" (assignment_expression "pOStack_74 = pOVar21" identifier = identifier) ;) (if_statement "if (iStack_3c == 9) {\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }" if (parenthesized_expression "(iStack_3c == 9)" ( (binary_expression "iStack_3c == 9" identifier == number_literal) )) (compound_statement "{\n            pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);\n            pRVar12 = pRStack_88;\n            if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }\n          }" { (expression_statement "pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10);" (assignment_expression "pRStack_88 = *(Relocate **)(pcVar31 + 0x3d8b10)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d8b10)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d8b10)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d8b10)" ( (binary_expression "pcVar31 + 0x3d8b10" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = pRStack_88;" (assignment_expression "pRVar12 = pRStack_88" identifier = identifier) ;) (if_statement "if (this != (Relocate *)0x0) {\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }" if (parenthesized_expression "(this != (Relocate *)0x0)" ( (binary_expression "this != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              unaff_s2 = (Relocate *)0x0;\n              unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);\n              unaff_s8 = (_func_int_varargs *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);\n            }" { (expression_statement "unaff_s2 = (Relocate *)0x0;" (assignment_expression "unaff_s2 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48);" (assignment_expression "unaff_s5 = *(Relocate **)(pcVar31 + 0x3d8b48)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d8b48)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d8b48)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d8b48)" ( (binary_expression "pcVar31 + 0x3d8b48" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8 = (_func_int_varargs *)&uStack_90;" (assignment_expression "unaff_s8 = (_func_int_varargs *)&uStack_90" identifier = (cast_expression "(_func_int_varargs *)&uStack_90" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_90" & identifier))) ;) (expression_statement "unaff_s7 = (uint *)0xff00;" (assignment_expression "unaff_s7 = (uint *)0xff00" identifier = (cast_expression "(uint *)0xff00" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              } while (this != unaff_s2);" do (compound_statement "{\n                if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 2;\n                pRVar12 = this;\n              }" { (if_statement "if (uVar5 == 0) {\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }" { (labeled_statement "LAB_000e9358:\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);" statement_identifier : (expression_statement "pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);" (assignment_expression "pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8)" identifier = (cast_expression "(Relocate *)((uint)puStack_38[1] >> 8)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)puStack_38[1] >> 8)" ( (binary_expression "(uint)puStack_38[1] >> 8" (cast_expression "(uint)puStack_38[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puStack_38[1]" identifier [ number_literal ])) >> number_literal) )))) ;)) (if_statement "if (pRVar12 < pRStack_28) {\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }" if (parenthesized_expression "(pRVar12 < pRStack_28)" ( (binary_expression "pRVar12 < pRStack_28" identifier < identifier) )) (compound_statement "{\n                    puVar29 = (undefined1 *)((int)pRVar12 * 0x10);\n                    pcVar34 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    in_t1 = (Relocate *)(puVar29 + iStack_24);\n                    uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;\n                    if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }" { (expression_statement "puVar29 = (undefined1 *)((int)pRVar12 * 0x10);" (assignment_expression "puVar29 = (undefined1 *)((int)pRVar12 * 0x10)" identifier = (cast_expression "(undefined1 *)((int)pRVar12 * 0x10)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar12 * 0x10)" ( (binary_expression "(int)pRVar12 * 0x10" (cast_expression "(int)pRVar12" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pcVar34 = pcStack_98;" (assignment_expression "pcVar34 = pcStack_98" identifier = identifier) ;) (if_statement "if (iStack_24 == 0) goto LAB_000e9610;" if (parenthesized_expression "(iStack_24 == 0)" ( (binary_expression "iStack_24 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9610;" goto statement_identifier ;)) (expression_statement "in_t1 = (Relocate *)(puVar29 + iStack_24);" (assignment_expression "in_t1 = (Relocate *)(puVar29 + iStack_24)" identifier = (cast_expression "(Relocate *)(puVar29 + iStack_24)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + iStack_24)" ( (binary_expression "puVar29 + iStack_24" identifier + identifier) )))) ;) (expression_statement "uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6;" (assignment_expression "uVar7 = (uint)*(ushort *)&in_t1[1].field_0x6" identifier = (binary_expression "(uint)*(ushort *)&in_t1[1].field_0x6" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)&in_t1[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&in_t1[1].field_0x6" & (field_expression "in_t1[1].field_0x6" (subscript_expression "in_t1[1]" identifier [ number_literal ]) . field_identifier))))) ;) (if_statement "if (uVar7 < 0xff00) {\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }" if (parenthesized_expression "(uVar7 < 0xff00)" ( (binary_expression "uVar7 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;\n                      bVar1 = in_t1[1].calculate_only_;\n                    }" { (labeled_statement "LAB_000e948c:\n                      if (uVar7 == 0) goto LAB_000e9394;" statement_identifier : (if_statement "if (uVar7 == 0) goto LAB_000e9394;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9394;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar34 = pcStack_98;" (assignment_expression "pcVar34 = pcStack_98" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e962c;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e9434;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9434;" goto statement_identifier ;)) (expression_statement "bVar1 = in_t1[1].calculate_only_;" (assignment_expression "bVar1 = in_t1[1].calculate_only_" identifier = (field_expression "in_t1[1].calculate_only_" (subscript_expression "in_t1[1]" identifier [ number_literal ]) . field_identifier)) ;) }) (else_clause "else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }" else (compound_statement "{\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;\n                    }" { (if_statement "if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }" if (parenthesized_expression "(uVar7 == 0xffff)" ( (binary_expression "uVar7 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_84 = pRVar12;\n                        pRStack_7c = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);\n                        pRVar12 = pRStack_84;\n                        in_t1 = pRStack_7c;\n                        puVar29 = puStack_80;\n                        goto LAB_000e948c;\n                      }" { (expression_statement "iVar2 = *(int *)&pOVar22->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar22->entsize_" identifier = (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_84 = pRVar12;" (assignment_expression "pRStack_84 = pRVar12" identifier = identifier) ;) (expression_statement "pRStack_7c = in_t1;" (assignment_expression "pRStack_7c = in_t1" identifier = identifier) ;) (expression_statement "puStack_80 = puVar29;" (assignment_expression "puStack_80 = puVar29" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }" { (expression_statement "iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);" (assignment_expression "iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22)" identifier = (call_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22)" (parenthesized_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar22)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar22->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar22->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84);" (assignment_expression "uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_84)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7790)" * (pointer_expression "*(code **)(pcStack_98 + -0x7790)" * (cast_expression "(code **)(pcStack_98 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7790)" ( (binary_expression "pcStack_98 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar22,pRStack_84)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar12 = pRStack_84;" (assignment_expression "pRVar12 = pRStack_84" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_7c;" (assignment_expression "in_t1 = pRStack_7c" identifier = identifier) ;) (expression_statement "puVar29 = puStack_80;" (assignment_expression "puVar29 = puStack_80" identifier = identifier) ;) (goto_statement "goto LAB_000e948c;" goto statement_identifier ;) })) (labeled_statement "LAB_000e9394:\n                      bVar1 = in_t1[1].calculate_only_;" statement_identifier : (expression_statement "bVar1 = in_t1[1].calculate_only_;" (assignment_expression "bVar1 = in_t1[1].calculate_only_" identifier = (field_expression "in_t1[1].calculate_only_" (subscript_expression "in_t1[1]" identifier [ number_literal ]) . field_identifier)) ;)) }))) (expression_statement "pcVar34 = pcStack_98;" (assignment_expression "pcVar34 = pcStack_98" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                      pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                      if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }" { (expression_statement "pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]" identifier = (cast_expression "(Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ]))) ;) (if_statement "if (pRVar12 == pRStack_88) {\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }" if (parenthesized_expression "(pRVar12 == pRStack_88)" ( (binary_expression "pRVar12 == pRStack_88" identifier == identifier) )) (compound_statement "{\n                        if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;\n                        iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }" { (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7) goto LAB_000e95d8;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2) <= uVar7" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>\n                                  2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e95d8;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }" else (compound_statement "{\n                        iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);\n                        uVar7 = *(uint *)(iVar2 + 0x98);\n                      }" { (expression_statement "iVar2 = (*(code *)pRVar12)(pOVar22,uVar7);" (assignment_expression "iVar2 = (*(code *)pRVar12)(pOVar22,uVar7)" identifier = (call_expression "(*(code *)pRVar12)(pOVar22,uVar7)" (parenthesized_expression "(*(code *)pRVar12)" ( (pointer_expression "*(code *)pRVar12" * (cast_expression "(code *)pRVar12" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pOVar22,uVar7)" ( identifier , identifier )))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar7 & 0x7fffffff | 0x80000000" (binary_expression "uVar7 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_90 = CONCAT13(2,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(2,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_90._1_3_)" identifier (argument_list "(2,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*(code *)unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*(code *)unaff_s5)" ( (pointer_expression "*(code *)unaff_s5" * (cast_expression "(code *)unaff_s5" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }" else (compound_statement "{\n                      piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);\n                      if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;\n                      iVar2 = *piVar9;\n                      if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *piVar9 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                    }" { (expression_statement "piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29);" (assignment_expression "piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29)" identifier = (cast_expression "(int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29)" ( (binary_expression "(int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                      (int)puVar29" (cast_expression "(int)&pOVar22->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar22->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar22->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier) -> field_identifier))) + (cast_expression "(int)puVar29" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (if_statement "if ((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12) goto LAB_000e95bc;" if (parenthesized_expression "((Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12)" ( (binary_expression "(Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                          pRVar12" (cast_expression "(Relocate *)\n                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4)" ( (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4" (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_" (pointer_expression "*(int *)&pOVar22->field_0xec" * (cast_expression "(int *)&pOVar22->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->field_0xec" & (field_expression "pOVar22->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar22->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e95bc;" goto statement_identifier ;)) (expression_statement "iVar2 = *piVar9;" (assignment_expression "iVar2 = *piVar9" identifier = (pointer_expression "*piVar9" * identifier)) ;) (if_statement "if ((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;" if (parenthesized_expression "((iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))" ( (binary_expression "(iVar2 != 0) && (iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2)" ( (comma_expression "iVar20 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2" (assignment_expression "iVar20 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "iVar2 != -2" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000e9238;" goto statement_identifier ;)) (expression_statement "*piVar9 = -2;" (assignment_expression "*piVar9 = -2" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*(code *)unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*(code *)unaff_s5)" ( (pointer_expression "*(code *)unaff_s5" * (cast_expression "(code *)unaff_s5" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }" else (compound_statement "{\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                  }" { (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*(code *)unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*(code *)unaff_s5)" ( (pointer_expression "*(code *)unaff_s5" * (cast_expression "(code *)unaff_s5" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;" (assignment_expression "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }" else (compound_statement "{\n                  pRStack_9c = (Relocate *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*(code *)unaff_s5)(iStack_20,unaff_s8);\n                }" { (expression_statement "pRStack_9c = (Relocate *)*puStack_38;" (assignment_expression "pRStack_9c = (Relocate *)*puStack_38" identifier = (cast_expression "(Relocate *)*puStack_38" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puStack_38" * identifier))) ;) (expression_statement "uStack_a0 = 0;" (assignment_expression "uStack_a0 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc);" (assignment_expression "iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x76e0))\n                                    (output_section,pOVar22,pcVar35 + 0x3e03cc)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_98 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_98 + -0x76e0)" * (cast_expression "(code **)(pcStack_98 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x76e0)" ( (binary_expression "pcStack_98 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(output_section,pOVar22,pcVar35 + 0x3e03cc)" ( identifier , identifier , (binary_expression "pcVar35 + 0x3e03cc" identifier + number_literal) )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000e9358;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000e9358;" goto statement_identifier ;)) (labeled_statement "LAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);" statement_identifier : (expression_statement "uStack_90 = CONCAT13(8,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(8,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_90._1_3_)" identifier (argument_list "(8,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*(code *)unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*(code *)unaff_s5)" ( (pointer_expression "*(code *)unaff_s5" * (cast_expression "(code *)unaff_s5" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }))) (expression_statement "unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1);" (assignment_expression "unaff_s2 = (Relocate *)((int)&unaff_s2->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&unaff_s2->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&unaff_s2->calculated_value_ + 1)" ( (binary_expression "(int)&unaff_s2->calculated_value_ + 1" (cast_expression "(int)&unaff_s2->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&unaff_s2->calculated_value_" & (field_expression "unaff_s2->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "puStack_38 = puStack_38 + 2;" (assignment_expression "puStack_38 = puStack_38 + 2" identifier = (binary_expression "puStack_38 + 2" identifier + number_literal)) ;) (expression_statement "pRVar12 = this;" (assignment_expression "pRVar12 = this" identifier = identifier) ;) }) while (parenthesized_expression "(this != unaff_s2)" ( (binary_expression "this != unaff_s2" identifier != identifier) )) ;) })) }) (else_clause "else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }" else (compound_statement "{\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }\n            unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);\n            pRVar12 = this;\n            if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }\n          }" { (if_statement "if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }" if (parenthesized_expression "(iStack_3c != 4)" ( (binary_expression "iStack_3c != 4" identifier != number_literal) )) (compound_statement "{\nLAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);\n              pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              puVar29 = puStack_80;\n              pRVar14 = pRStack_84;\n              pRVar12 = pRStack_9c;\n              pcVar35 = pcVar31 + 0x3dfbfc;\n              uVar7 = (uint)bStack_89;\n              pOVar21 = pOVar23;\n              pcVar37 = pcStack_98;\n              pcStack_100 = pcVar35;\n              puStack_d4 = puStack_38;\n              pRStack_d0 = unaff_s2;\n              pOStack_c8 = pOVar22;\n              pRStack_c4 = unaff_s5;\n              uStack_c0 = uVar5;\n              puStack_bc = unaff_s7;\n              p_Stack_b8 = unaff_s8;\n              pcStack_b4 = pcVar38;\n              if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }\n              pRVar26 = unaff_s2;\n              puVar30 = unaff_s7;\n              p_Var32 = unaff_s8;\n              if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);\n              pRVar24 = pRStack_e8;\n              pRVar13 = pRStack_ec;\n              pcVar35 = pcVar31 + 0x3df4e4;\n              pRStack_134 = pRVar14;\n              puStack_140 = puVar29;\n              uVar5 = (uint)bStack_f1;\n              pOVar22 = pOVar21;\n              pcVar34 = pcStack_100;\n              pcStack_160 = pcVar35;\n              pcStack_13c = pcVar37;\n              pRStack_138 = pRVar26;\n              pOStack_130 = pOVar23;\n              pRStack_12c = pRVar12;\n              uStack_128 = uVar7;\n              puStack_124 = puVar30;\n              p_Stack_120 = p_Var32;\n              pcStack_11c = pcVar38;\n              if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }\n              if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);\nLAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = scan_relocatable_relocs;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\n              pRVar18 = pRStack_148;\n              pRVar25 = pRStack_14c;\n              pRVar14 = pRStack_164;\n              pcVar35 = pcVar31 + 0x3dee80;\n              pRStack_194 = pRVar13;\n              uStack_1a0 = (uint)pRVar24;\n              puVar28 = (uint *)(uint)bStack_151;\n              pOVar23 = pOVar22;\n              pcVar37 = pcStack_160;\n              pcStack_1c8 = pcVar35;\n              pcStack_19c = pcVar34;\n              pRStack_198 = pRVar26;\n              pOStack_190 = pOVar21;\n              pRStack_18c = pRVar12;\n              uStack_188 = uVar5;\n              puStack_184 = puVar30;\n              p_Stack_180 = p_Var32;\n              pcStack_17c = pcVar38;\n              if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::emit_relocs_scan;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);\n              pRVar13 = pRStack_1b0;\n              pRVar12 = pRStack_1b4;\n              pcVar35 = pcVar31 + 0x3de734;\n              pRStack_1fc = pRVar25;\n              pRStack_208 = pRVar18;\n              uVar5 = (uint)bStack_1b9;\n              pOVar21 = pOVar23;\n              pcVar34 = pcStack_1c8;\n              pcStack_228 = pcVar35;\n              pcStack_204 = pcVar37;\n              pRStack_200 = pRVar26;\n              pOStack_1f8 = pOVar22;\n              pRStack_1f4 = pRVar14;\n              puStack_1f0 = puVar28;\n              puStack_1ec = puVar30;\n              p_Stack_1e8 = p_Var32;\n              pcStack_1e4 = pcVar38;\n              if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }\n              if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;\n              (*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pRVar18 = pRStack_210;\n              pRVar25 = pRStack_214;\n              pRVar24 = pRStack_22c;\n              pcVar35 = pcVar31 + 0x3de0d4;\n              pRStack_25c = pRVar12;\n              uStack_268 = (uint)pRVar13;\n              uVar7 = (uint)bStack_219;\n              pOVar22 = pOVar21;\n              pcVar37 = pcStack_228;\n              pcStack_290 = pcVar35;\n              pcStack_264 = pcVar34;\n              pRStack_260 = pRVar26;\n              pOStack_258 = pOVar23;\n              pRStack_254 = pRVar14;\n              puStack_250 = puVar28;\n              uStack_24c = uVar5;\n              p_Stack_248 = p_Var32;\n              pcStack_244 = pcVar38;\n              if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }\n              if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);\nLAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\nLAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);\nLAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);\nLAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);\nswitchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);\n              pcVar38 = Target_mips<64,_false>::emit_relocs_scan;\n              (*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);\n              pRVar14 = pRStack_278;\n              pRVar12 = pRStack_27c;\n              pcVar35 = pcVar31 + 0x3dd990;\n              pRStack_2c4 = pRVar25;\n              pRStack_2cc = pRVar18;\n              uVar5 = (uint)bStack_281;\n              pOVar23 = pOVar22;\n              pcVar34 = pcStack_290;\n              pcStack_2f0 = pcVar35;\n              pcStack_2d0 = pcVar37;\n              pRStack_2c8 = pRVar26;\n              pOStack_2c0 = pOVar21;\n              pRStack_2bc = pRVar24;\n              puStack_2b8 = puVar28;\n              uStack_2b4 = uVar7;\n              p_Stack_2b0 = p_Var32;\n              pcStack_2ac = pcVar38;\n              if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }\n              if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);\nLAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;\n              (**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);\nLAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);\n              pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;\n              (*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);\n              pRVar18 = pRStack_2d8;\n              pRVar25 = pRStack_2dc;\n              pRVar13 = pRStack_2f4;\n              pRStack_324 = pRVar12;\n              pRStack_330 = pRVar14;\n              pcVar35 = pcStack_2f0;\n              pcStack_32c = pcVar34;\n              pRStack_328 = pRVar26;\n              pOStack_320 = pOVar22;\n              pRStack_31c = pRVar24;\n              puStack_318 = puVar28;\n              uStack_314 = uVar5;\n              p_Stack_310 = p_Var32;\n              pcStack_30c = pcVar31;\n              if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }\n              if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);\nLAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);\nLAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);\nLAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);\nswitchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5adc);\n              iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;\n              (*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d5354);\n              iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5260);\n              iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;\n              (*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d516c);\n              iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d5078);\n              iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4f84);\n              iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;\n              (*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);\n              if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 0xb6;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4e90);\n              iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;\n              (*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar20 = 200;\n              pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);\n              iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;\n              (*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);\n              if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }\n              iVar2 = 200;\n              pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);\n              piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);\n              (*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);\n              *piVar9 = (int)(piVar9 + 2);\n              if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }\n                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n              uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);\n              return (bool)uVar11;\n            }" { (labeled_statement "LAB_000e95f4:\n              (**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);" statement_identifier : (expression_statement "(**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c);" (call_expression "(**(code **)(pcVar34 + -0x7810))\n                        (*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c)" (parenthesized_expression "(**(code **)(pcVar34 + -0x7810))" ( (pointer_expression "**(code **)(pcVar34 + -0x7810)" * (pointer_expression "*(code **)(pcVar34 + -0x7810)" * (cast_expression "(code **)(pcVar34 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar34 + -0x7810)" ( (binary_expression "pcVar34 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar34 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar34 + -0x77f0) + -0x502c)" ( (binary_expression "*(int *)(pcVar34 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar34 + -0x7fc4)" * (cast_expression "(int *)(pcVar34 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + -0x7fc4)" ( (binary_expression "pcVar34 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar34 + -0x77f0) + -0x502c" (pointer_expression "*(int *)(pcVar34 + -0x77f0)" * (cast_expression "(int *)(pcVar34 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + -0x77f0)" ( (binary_expression "pcVar34 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000e9610:\n              iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;" statement_identifier : (expression_statement "iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044;" (assignment_expression "iVar2 = *(int *)(pcVar34 + -0x77f0) + -0x5044" identifier = (binary_expression "*(int *)(pcVar34 + -0x77f0) + -0x5044" (pointer_expression "*(int *)(pcVar34 + -0x77f0)" * (cast_expression "(int *)(pcVar34 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + -0x77f0)" ( (binary_expression "pcVar34 + -0x77f0" identifier + number_literal) )))) + number_literal)) ;)) (expression_statement "(**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2);" (call_expression "(**(code **)(pcVar34 + -0x7810))(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" (parenthesized_expression "(**(code **)(pcVar34 + -0x7810))" ( (pointer_expression "**(code **)(pcVar34 + -0x7810)" * (pointer_expression "*(code **)(pcVar34 + -0x7810)" * (cast_expression "(code **)(pcVar34 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar34 + -0x7810)" ( (binary_expression "pcVar34 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar34 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" ( (binary_expression "*(int *)(pcVar34 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar34 + -0x7fc4)" * (cast_expression "(int *)(pcVar34 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + -0x7fc4)" ( (binary_expression "pcVar34 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e962c:\n              pcVar31 = *(code **)(pcVar34 + -0x7810);" statement_identifier : (expression_statement "pcVar31 = *(code **)(pcVar34 + -0x7810);" (assignment_expression "pcVar31 = *(code **)(pcVar34 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar34 + -0x7810)" * (cast_expression "(code **)(pcVar34 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar34 + -0x7810)" ( (binary_expression "pcVar34 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs;" (comma_expression "pcVar38 = Target_mips<32,_true>::scan_relocatable_relocs" (assignment_expression "pcVar38 = Target_mips<32" identifier = (binary_expression "Target_mips<32" identifier < number_literal)) , (binary_expression "_true>::scan_relocatable_relocs" identifier > (ERROR "::" : :) identifier)) ;) (expression_statement "(*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);" (call_expression "(*pcVar31)(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" (parenthesized_expression "(*pcVar31)" ( (pointer_expression "*pcVar31" * identifier) )) (argument_list "(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" ( (binary_expression "*(int *)(pcVar34 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar34 + -0x7fc4)" * (cast_expression "(int *)(pcVar34 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + -0x7fc4)" ( (binary_expression "pcVar34 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x34dc" identifier + number_literal) ))) ;) (expression_statement "puVar29 = puStack_80;" (assignment_expression "puVar29 = puStack_80" identifier = identifier) ;) (expression_statement "pRVar14 = pRStack_84;" (assignment_expression "pRVar14 = pRStack_84" identifier = identifier) ;) (expression_statement "pRVar12 = pRStack_9c;" (assignment_expression "pRVar12 = pRStack_9c" identifier = identifier) ;) (expression_statement "pcVar35 = pcVar31 + 0x3dfbfc;" (assignment_expression "pcVar35 = pcVar31 + 0x3dfbfc" identifier = (binary_expression "pcVar31 + 0x3dfbfc" identifier + number_literal)) ;) (expression_statement "uVar7 = (uint)bStack_89;" (assignment_expression "uVar7 = (uint)bStack_89" identifier = (cast_expression "(uint)bStack_89" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pOVar21 = pOVar23;" (assignment_expression "pOVar21 = pOVar23" identifier = identifier) ;) (expression_statement "pcVar37 = pcStack_98;" (assignment_expression "pcVar37 = pcStack_98" identifier = identifier) ;) (expression_statement "pcStack_100 = pcVar35;" (assignment_expression "pcStack_100 = pcVar35" identifier = identifier) ;) (expression_statement "puStack_d4 = puStack_38;" (assignment_expression "puStack_d4 = puStack_38" identifier = identifier) ;) (expression_statement "pRStack_d0 = unaff_s2;" (assignment_expression "pRStack_d0 = unaff_s2" identifier = identifier) ;) (expression_statement "pOStack_c8 = pOVar22;" (assignment_expression "pOStack_c8 = pOVar22" identifier = identifier) ;) (expression_statement "pRStack_c4 = unaff_s5;" (assignment_expression "pRStack_c4 = unaff_s5" identifier = identifier) ;) (expression_statement "uStack_c0 = uVar5;" (assignment_expression "uStack_c0 = uVar5" identifier = identifier) ;) (expression_statement "puStack_bc = unaff_s7;" (assignment_expression "puStack_bc = unaff_s7" identifier = identifier) ;) (expression_statement "p_Stack_b8 = unaff_s8;" (assignment_expression "p_Stack_b8 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_b4 = pcVar38;" (assignment_expression "pcStack_b4 = pcVar38" identifier = identifier) ;) (if_statement "if (pRStack_9c == (Relocate *)0x9) {\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }" if (parenthesized_expression "(pRStack_9c == (Relocate *)0x9)" ( (binary_expression "pRStack_9c == (Relocate *)0x9" identifier == (cast_expression "(Relocate *)0x9" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);\n                if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }\nLAB_000e978c:\n                return SUB41(pRVar13,0);\n              }" { (expression_statement "pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408);" (assignment_expression "pRVar13 = *(Relocate **)(pcVar31 + 0x3d8408)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d8408)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d8408)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d8408)" ( (binary_expression "pcVar31 + 0x3d8408" identifier + number_literal) ))))) ;) (if_statement "if (pRStack_94 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }" if (parenthesized_expression "(pRStack_94 != (Relocate *)0x0)" ( (binary_expression "pRStack_94 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);\n                  pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);\n                }" { (expression_statement "pRVar26 = (Relocate *)0x0;" (assignment_expression "pRVar26 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0);" (assignment_expression "p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d84e0)" identifier = (pointer_expression "*(_func_int_varargs **)(pcVar31 + 0x3d84e0)" * (cast_expression "(_func_int_varargs **)(pcVar31 + 0x3d84e0)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d84e0)" ( (binary_expression "pcVar31 + 0x3d84e0" identifier + number_literal) ))))) ;) (expression_statement "pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_;" (assignment_expression "pRStack_f0 = (Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_" identifier = (cast_expression "(Relocate *)\n                               &(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_" & (field_expression "(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c].calculate_only_" (subscript_expression "(*(Relocate **)(pcVar31 + 0x3d8408))[0x30c]" (parenthesized_expression "(*(Relocate **)(pcVar31 + 0x3d8408))" ( (pointer_expression "*(Relocate **)(pcVar31 + 0x3d8408)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d8408)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d8408)" ( (binary_expression "pcVar31 + 0x3d8408" identifier + number_literal) )))) )) [ number_literal ]) . field_identifier)))) ;) (expression_statement "puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448);" (assignment_expression "puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448)" identifier = (cast_expression "(uint *)(*(int *)(pcVar31 + 0x3d7c38) + 0x5448)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar31 + 0x3d7c38) + 0x5448)" ( (binary_expression "*(int *)(pcVar31 + 0x3d7c38) + 0x5448" (pointer_expression "*(int *)(pcVar31 + 0x3d7c38)" * (cast_expression "(int *)(pcVar31 + 0x3d7c38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x3d7c38)" ( (binary_expression "pcVar31 + 0x3d7c38" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  } while (pRStack_94 != pRVar26);" do (compound_statement "{\n                    if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar13 = pRStack_94;\n                  }" { (if_statement "if (uVar7 == 0) {\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);\n                      pRVar24 = (Relocate *)((uint)pRVar13 >> 8);\n                      if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      *(int *)(puVar29 + 0xc) = iVar2 + 1;\n                    }" { (labeled_statement "LAB_000e99a8:\n                      pRVar13 = *(Relocate **)(pcVar37 + 4);" statement_identifier : (expression_statement "pRVar13 = *(Relocate **)(pcVar37 + 4);" (assignment_expression "pRVar13 = *(Relocate **)(pcVar37 + 4)" identifier = (pointer_expression "*(Relocate **)(pcVar37 + 4)" * (cast_expression "(Relocate **)(pcVar37 + 4)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 4)" ( (binary_expression "pcVar37 + 4" identifier + number_literal) ))))) ;)) (expression_statement "pRVar24 = (Relocate *)((uint)pRVar13 >> 8);" (assignment_expression "pRVar24 = (Relocate *)((uint)pRVar13 >> 8)" identifier = (cast_expression "(Relocate *)((uint)pRVar13 >> 8)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pRVar13 >> 8)" ( (binary_expression "(uint)pRVar13 >> 8" (cast_expression "(uint)pRVar13" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pRVar24 < pRStack_88) {\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }" if (parenthesized_expression "(pRVar24 < pRStack_88)" ( (binary_expression "pRVar24 < pRStack_88" identifier < identifier) )) (compound_statement "{\n                        in_t1 = (Relocate *)((int)pRVar24 * 0x10);\n                        pcVar35 = pcStack_100;\n                        if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;\n                        pRVar25 = pRVar14 + (int)pRVar24 * 2;\n                        pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;\n                        if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar13 & 0xff;\n                        pcVar35 = pcStack_100;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }\n                        pcVar35 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);\n                        (*pcVar35)(puVar29,&uStack_f8);\n                        if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }" { (expression_statement "in_t1 = (Relocate *)((int)pRVar24 * 0x10);" (assignment_expression "in_t1 = (Relocate *)((int)pRVar24 * 0x10)" identifier = (cast_expression "(Relocate *)((int)pRVar24 * 0x10)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar24 * 0x10)" ( (binary_expression "(int)pRVar24 * 0x10" (cast_expression "(int)pRVar24" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pcVar35 = pcStack_100;" (assignment_expression "pcVar35 = pcStack_100" identifier = identifier) ;) (if_statement "if (pRVar14 == (Relocate *)0x0) goto LAB_000e9d24;" if (parenthesized_expression "(pRVar14 == (Relocate *)0x0)" ( (binary_expression "pRVar14 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e9d24;" goto statement_identifier ;)) (expression_statement "pRVar25 = pRVar14 + (int)pRVar24 * 2;" (assignment_expression "pRVar25 = pRVar14 + (int)pRVar24 * 2" identifier = (binary_expression "pRVar14 + (int)pRVar24 * 2" identifier + (binary_expression "(int)pRVar24 * 2" (cast_expression "(int)pRVar24" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6;" (assignment_expression "pRVar18 = (Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6" identifier = (binary_expression "(Relocate *)(uint)*(ushort *)&pRVar25[1].field_0x6" (cast_expression "(Relocate *)(uint)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uint)" ( identifier ))) * (cast_expression "(ushort *)&pRVar25[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25[1].field_0x6" & (field_expression "pRVar25[1].field_0x6" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier))))) ;) (if_statement "if (pRVar18 < (Relocate *)0xff00) {\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }" if (parenthesized_expression "(pRVar18 < (Relocate *)0xff00)" ( (binary_expression "pRVar18 < (Relocate *)0xff00" identifier < (cast_expression "(Relocate *)0xff00" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;\n                          pcVar35 = pcStack_100;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }" { (labeled_statement "LAB_000e9ad8:\n                          if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;" statement_identifier : (if_statement "if (pRVar18 == (Relocate *)0x0) goto LAB_000e99e8;" if (parenthesized_expression "(pRVar18 == (Relocate *)0x0)" ( (binary_expression "pRVar18 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e99e8;" goto statement_identifier ;))) (expression_statement "pcVar35 = pcStack_100;" (assignment_expression "pcVar35 = pcStack_100" identifier = identifier) ;) (if_statement "if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9d08;" if (parenthesized_expression "((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18)" ( (binary_expression "(Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18" (cast_expression "(Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9d08;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)\n                          goto LAB_000e9a0c;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "(int)pRVar18 * 4" (cast_expression "(int)pRVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9a0c;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar25[1].calculate_only_;" (assignment_expression "bVar1 = pRVar25[1].calculate_only_" identifier = (field_expression "pRVar25[1].calculate_only_" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)) ;) }) (else_clause "else {\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }" else (compound_statement "{\n                          if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }" { (if_statement "if (pRVar18 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }" if (parenthesized_expression "(pRVar18 == (Relocate *)0xffff)" ( (binary_expression "pRVar18 == (Relocate *)0xffff" identifier == (cast_expression "(Relocate *)0xffff" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_ec = pRVar13;\n                            pRStack_e8 = pRVar24;\n                            pRStack_e4 = in_t1;\n                            pRStack_e0 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_ec;\n                            pRStack_ec = pRStack_e8;\n                            pRVar13 = pRStack_e8;\n                            pRStack_e8 = (Relocate *)uVar5;\n                            pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                            pRVar13 = pRStack_e8;\n                            pRVar24 = pRStack_ec;\n                            in_t1 = pRStack_e4;\n                            pRVar25 = pRStack_e0;\n                            goto LAB_000e9ad8;\n                          }" { (expression_statement "iVar2 = *(int *)&pOVar23->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar23->entsize_" identifier = (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_ec = pRVar13;" (assignment_expression "pRStack_ec = pRVar13" identifier = identifier) ;) (expression_statement "pRStack_e8 = pRVar24;" (assignment_expression "pRStack_e8 = pRVar24" identifier = identifier) ;) (expression_statement "pRStack_e4 = in_t1;" (assignment_expression "pRStack_e4 = in_t1" identifier = identifier) ;) (expression_statement "pRStack_e0 = pRVar25;" (assignment_expression "pRStack_e0 = pRVar25" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }" { (expression_statement "iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8);" (assignment_expression "iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8)" identifier = (call_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23,&uStack_f8)" (parenthesized_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar23,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) )))) ;) (expression_statement "*(int *)&pOVar23->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar23->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar5 = (uint)pRStack_ec;" (assignment_expression "uVar5 = (uint)pRStack_ec" identifier = (cast_expression "(uint)pRStack_ec" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pRStack_ec = pRStack_e8;" (assignment_expression "pRStack_ec = pRStack_e8" identifier = identifier) ;) (expression_statement "pRVar13 = pRStack_e8;" (assignment_expression "pRVar13 = pRStack_e8" identifier = identifier) ;) (expression_statement "pRStack_e8 = (Relocate *)uVar5;" (assignment_expression "pRStack_e8 = (Relocate *)uVar5" identifier = (cast_expression "(Relocate *)uVar5" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);" (assignment_expression "pRVar18 = (Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13)" identifier = (cast_expression "(Relocate *)\n                                      (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7790)" * (pointer_expression "*(code **)(pcStack_100 + -0x7790)" * (cast_expression "(code **)(pcStack_100 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7790)" ( (binary_expression "pcStack_100 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar23,pRVar13)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pRVar13 = pRStack_e8;" (assignment_expression "pRVar13 = pRStack_e8" identifier = identifier) ;) (expression_statement "pRVar24 = pRStack_ec;" (assignment_expression "pRVar24 = pRStack_ec" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_e4;" (assignment_expression "in_t1 = pRStack_e4" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_e0;" (assignment_expression "pRVar25 = pRStack_e0" identifier = identifier) ;) (goto_statement "goto LAB_000e9ad8;" goto statement_identifier ;) })) (labeled_statement "LAB_000e99e8:\n                          bVar1 = pRVar25[1].calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar25[1].calculate_only_;" (assignment_expression "bVar1 = pRVar25[1].calculate_only_" identifier = (field_expression "pRVar25[1].calculate_only_" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)) ;)) }))) (expression_statement "uVar5 = (uint)pRVar13 & 0xff;" (assignment_expression "uVar5 = (uint)pRVar13 & 0xff" identifier = (binary_expression "(uint)pRVar13 & 0xff" (cast_expression "(uint)pRVar13" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "pcVar35 = pcStack_100;" (assignment_expression "pcVar35 = pcStack_100" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) != 3) {\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }" if (parenthesized_expression "((bVar1 & 0xf) != 3)" ( (binary_expression "(bVar1 & 0xf) != 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                          if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }" { (if_statement "if (pRVar24 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000e9a0c;" if (parenthesized_expression "(pRVar24 == (Relocate *)0x0 && uVar5 == 0)" ( (binary_expression "pRVar24 == (Relocate *)0x0 && uVar5 == 0" (binary_expression "pRVar24 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (binary_expression "uVar5 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_000e9a0c;" goto statement_identifier ;)) (expression_statement "in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);" (assignment_expression "in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" identifier = (cast_expression "(Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" ( (binary_expression "(int)&in_t1->calculated_value_ +\n                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill" (cast_expression "(int)&in_t1->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&in_t1->calculated_value_" & (field_expression "in_t1->calculated_value_" identifier -> field_identifier))) + (cast_expression "(int)&pOVar23->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar23->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar23->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier) -> field_identifier)))) )))) ;) (if_statement "if (pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }" if (parenthesized_expression "(pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4))" ( (binary_expression "pRVar24 < (Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)" identifier < (cast_expression "(Relocate *)\n                                        (*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4)" ( (binary_expression "*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_ >> 4" (binary_expression "*(int *)&pOVar23->field_0xec -\n                                         (int)pOVar23->free_space_fill_" (pointer_expression "*(int *)&pOVar23->field_0xec" * (cast_expression "(int *)&pOVar23->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->field_0xec" & (field_expression "pOVar23->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar23->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier))) >> number_literal) )))) )) (compound_statement "{\n                            if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000e9970;\n                          }" { (if_statement "if (in_t1->calculated_value_ != 0) {\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }" if (parenthesized_expression "(in_t1->calculated_value_ != 0)" ( (binary_expression "in_t1->calculated_value_ != 0" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n                              uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                              pRVar13 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;\n                            }" { (expression_statement "uVar5 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar5 = *(uint *)(pcStack_100 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pRVar13 = (Relocate *)0x9;" (assignment_expression "pRVar13 = (Relocate *)0x9" identifier = (cast_expression "(Relocate *)0x9" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000e981c;" if (parenthesized_expression "(in_t1->calculated_value_ != 0xfffffffe)" ( (binary_expression "in_t1->calculated_value_ != 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) )) (goto_statement "goto LAB_000e981c;" goto statement_identifier ;)) })) (expression_statement "in_t1->calculated_value_ = 0xfffffffe;" (assignment_expression "in_t1->calculated_value_ = 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) = number_literal) ;) (goto_statement "goto LAB_000e9970;" goto statement_identifier ;) })) (goto_statement "goto LAB_000e9cb4;" goto statement_identifier ;) })) (if_statement "if (uVar5 != 4) {\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }" if (parenthesized_expression "(uVar5 != 4)" ( (binary_expression "uVar5 != 4" identifier != number_literal) )) (compound_statement "{\n                          pRStack_ec = pRVar18;\n                          uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);\n                          pcVar35 = pcStack_100;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }" { (expression_statement "pRStack_ec = pRVar18;" (assignment_expression "pRStack_ec = pRVar18" identifier = identifier) ;) (expression_statement "uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23);" (assignment_expression "uVar5 = (*(code *)pRStack_f0)(uVar5,pOVar23)" identifier = (call_expression "(*(code *)pRStack_f0)(uVar5,pOVar23)" (parenthesized_expression "(*(code *)pRStack_f0)" ( (pointer_expression "*(code *)pRStack_f0" * (cast_expression "(code *)pRStack_f0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar5,pOVar23)" ( identifier , identifier )))) ;) (expression_statement "pcVar35 = pcStack_100;" (assignment_expression "pcVar35 = pcStack_100" identifier = identifier) ;) (if_statement "if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }" if (parenthesized_expression "(uVar5 < 9)" ( (binary_expression "uVar5 < 9" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_100 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }" { comment comment (expression_statement "uVar11 = (*(pcStack_100 + puVar30[uVar5]))();" (assignment_expression "uVar11 = (*(pcStack_100 + puVar30[uVar5]))()" identifier = (call_expression "(*(pcStack_100 + puVar30[uVar5]))()" (parenthesized_expression "(*(pcStack_100 + puVar30[uVar5]))" ( (pointer_expression "*(pcStack_100 + puVar30[uVar5])" * (parenthesized_expression "(pcStack_100 + puVar30[uVar5])" ( (binary_expression "pcStack_100 + puVar30[uVar5]" identifier + (subscript_expression "puVar30[uVar5]" identifier [ identifier ])) ))) )) (argument_list "()" ( )))) ;) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) (goto_statement "goto switchD_000e9b48_caseD_3;" goto statement_identifier ;) })) (expression_statement "p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "p_Var33 = (pOVar23->super_Output_data)._vptr_Output_data[0x18]" identifier = (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }\n                        else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }" if (parenthesized_expression "(p_Var33 == p_Var32)" ( (binary_expression "p_Var33 == p_Var32" identifier == identifier) )) (compound_statement "{\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);\n                          pRStack_ec = pRVar12;\n                        }" { (if_statement "if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18) goto LAB_000e9cec;" if (parenthesized_expression "((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18)" ( (binary_expression "(Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar18" (cast_expression "(Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9cec;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + (int)pRVar18 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "(int)pRVar18 * 4" (cast_expression "(int)pRVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))))) ;) (expression_statement "pRStack_ec = pRVar12;" (assignment_expression "pRStack_ec = pRVar12" identifier = identifier) ;) }) (else_clause "else {\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }" else (compound_statement "{\n                          pRStack_ec = pRVar12;\n                          iVar2 = (*p_Var33)(pOVar23,pRVar18);\n                        }" { (expression_statement "pRStack_ec = pRVar12;" (assignment_expression "pRStack_ec = pRVar12" identifier = identifier) ;) (expression_statement "iVar2 = (*p_Var33)(pOVar23,pRVar18);" (assignment_expression "iVar2 = (*p_Var33)(pOVar23,pRVar18)" identifier = (call_expression "(*p_Var33)(pOVar23,pRVar18)" (parenthesized_expression "(*p_Var33)" ( (pointer_expression "*p_Var33" * identifier) )) (argument_list "(pOVar23,pRVar18)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar35 = *(code **)(pcStack_100 + -0x76e4);" (assignment_expression "pcVar35 = *(code **)(pcStack_100 + -0x76e4)" identifier = (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" * (cast_expression "(code **)(pcStack_100 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e4)" ( (binary_expression "pcStack_100 + -0x76e4" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13((char)pRStack_ec,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13((char)pRStack_ec,uStack_f8._1_3_)" identifier (argument_list "((char)pRStack_ec,uStack_f8._1_3_)" ( (cast_expression "(char)pRStack_ec" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar35)(puVar29,&uStack_f8);" (call_expression "(*pcVar35)(puVar29,&uStack_f8)" (parenthesized_expression "(*pcVar35)" ( (pointer_expression "*pcVar35" * identifier) )) (argument_list "(puVar29,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) ))) ;) (if_statement "if (pRStack_ec == (Relocate *)&DAT_00000008) goto LAB_000e9990;" if (parenthesized_expression "(pRStack_ec == (Relocate *)&DAT_00000008)" ( (binary_expression "pRStack_ec == (Relocate *)&DAT_00000008" identifier == (cast_expression "(Relocate *)&DAT_00000008" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000e9990;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(puVar29 + 0xc);" (assignment_expression "iVar2 = *(int *)(puVar29 + 0xc)" identifier = (pointer_expression "*(int *)(puVar29 + 0xc)" * (cast_expression "(int *)(puVar29 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xc)" ( (binary_expression "puVar29 + 0xc" identifier + number_literal) ))))) ;) }) (else_clause "else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }" else (compound_statement "{\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                        iVar2 = *(int *)(puVar29 + 0xc);\n                      }" { (labeled_statement "LAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;" statement_identifier : (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" identifier = (binary_expression "uStack_f8 & 0xffffff" identifier & number_literal)) ;)) (expression_statement "(**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);" (call_expression "(**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" * (cast_expression "(code **)(pcStack_100 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e4)" ( (binary_expression "pcStack_100 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(puVar29,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) ))) ;) (expression_statement "iVar2 = *(int *)(puVar29 + 0xc);" (assignment_expression "iVar2 = *(int *)(puVar29 + 0xc)" identifier = (pointer_expression "*(int *)(puVar29 + 0xc)" * (cast_expression "(int *)(puVar29 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xc)" ( (binary_expression "puVar29 + 0xc" identifier + number_literal) ))))) ;) }))) (expression_statement "*(int *)(puVar29 + 0xc) = iVar2 + 1;" (assignment_expression "*(int *)(puVar29 + 0xc) = iVar2 + 1" (pointer_expression "*(int *)(puVar29 + 0xc)" * (cast_expression "(int *)(puVar29 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xc)" ( (binary_expression "puVar29 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }" else (compound_statement "{\n                      iStack_104 = *(int *)pcVar37;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);\n                    }" { (expression_statement "iStack_104 = *(int *)pcVar37;" (assignment_expression "iStack_104 = *(int *)pcVar37" identifier = (pointer_expression "*(int *)pcVar37" * (cast_expression "(int *)pcVar37" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);" (assignment_expression "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0)" identifier = (call_expression "(**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e0)" * (cast_expression "(code **)(pcStack_100 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e0)" ( (binary_expression "pcStack_100 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_90,pOVar23,uStack_a0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000e99a8;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000e99a8;" goto statement_identifier ;)) (labeled_statement "LAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);" statement_identifier : (expression_statement "uStack_f8 = CONCAT13(8,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13(8,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_f8._1_3_)" identifier (argument_list "(8,uStack_f8._1_3_)" ( number_literal , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8);" (call_expression "(**(code **)(pcStack_100 + -0x76e4))(puVar29,&uStack_f8)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" * (cast_expression "(code **)(pcStack_100 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e4)" ( (binary_expression "pcStack_100 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(puVar29,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) ))) ;) }))) (labeled_statement "LAB_000e9990:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);" statement_identifier : (expression_statement "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);" (assignment_expression "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar26->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar26->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar26->calculated_value_ + 1" (cast_expression "(int)&pRVar26->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar26->calculated_value_" & (field_expression "pRVar26->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "pcVar37 = pcVar37 + 8;" (assignment_expression "pcVar37 = pcVar37 + 8" identifier = (binary_expression "pcVar37 + 8" identifier + number_literal)) ;) (expression_statement "pRVar13 = pRStack_94;" (assignment_expression "pRVar13 = pRStack_94" identifier = identifier) ;) }) while (parenthesized_expression "(pRStack_94 != pRVar26)" ( (binary_expression "pRStack_94 != pRVar26" identifier != identifier) )) ;) })) (labeled_statement "LAB_000e978c:\n                return SUB41(pRVar13,0);" statement_identifier : (return_statement "return SUB41(pRVar13,0);" return (call_expression "SUB41(pRVar13,0)" identifier (argument_list "(pRVar13,0)" ( identifier , number_literal ))) ;)) })) (expression_statement "pRVar26 = unaff_s2;" (assignment_expression "pRVar26 = unaff_s2" identifier = identifier) ;) (expression_statement "puVar30 = unaff_s7;" (assignment_expression "puVar30 = unaff_s7" identifier = identifier) ;) (expression_statement "p_Var32 = unaff_s8;" (assignment_expression "p_Var32 = unaff_s8" identifier = identifier) ;) (if_statement "if (pRStack_9c == (Relocate *)&DAT_00000004) {\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }" if (parenthesized_expression "(pRStack_9c == (Relocate *)&DAT_00000004)" ( (binary_expression "pRStack_9c == (Relocate *)&DAT_00000004" identifier == (cast_expression "(Relocate *)&DAT_00000004" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);\n                pRVar13 = pRStack_f0;\n                if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;\n                pRVar12 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_f8;\nLAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\nLAB_000e9704:\n                pcVar35 = pcStack_100;\n                pRVar24 = *(Relocate **)(pcVar37 + 4);\n                pRVar13 = (Relocate *)((uint)pRVar24 >> 8);\n                if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }\n                pRVar25 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);\n              }" { (expression_statement "pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0);" (assignment_expression "pRStack_f0 = *(Relocate **)(pcVar31 + 0x3d84e0)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d84e0)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d84e0)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d84e0)" ( (binary_expression "pcVar31 + 0x3d84e0" identifier + number_literal) ))))) ;) (expression_statement "pRVar13 = pRStack_f0;" (assignment_expression "pRVar13 = pRStack_f0" identifier = identifier) ;) (if_statement "if (pRStack_94 == (Relocate *)0x0) goto LAB_000e978c;" if (parenthesized_expression "(pRStack_94 == (Relocate *)0x0)" ( (binary_expression "pRStack_94 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e978c;" goto statement_identifier ;)) (expression_statement "pRVar12 = (Relocate *)0x0;" (assignment_expression "pRVar12 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518);" (assignment_expression "pRVar26 = *(Relocate **)(pcVar31 + 0x3d8518)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d8518)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d8518)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d8518)" ( (binary_expression "pcVar31 + 0x3d8518" identifier + number_literal) ))))) ;) (expression_statement "p_Var32 = (_func_int_varargs *)&DAT_00000008;" (assignment_expression "p_Var32 = (_func_int_varargs *)&DAT_00000008" identifier = (cast_expression "(_func_int_varargs *)&DAT_00000008" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) ;) (expression_statement "puVar30 = &uStack_f8;" (assignment_expression "puVar30 = &uStack_f8" identifier = (pointer_expression "&uStack_f8" & identifier)) ;) (labeled_statement "LAB_000e96fc:\n                if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }" statement_identifier : (if_statement "if (uVar7 != 0) {\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n                  iStack_104 = *(int *)pcVar37;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);\n                  if (iVar2 != 0) goto LAB_000e9704;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);\n                  (*(code *)pRVar26)(puVar29,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }" { (expression_statement "iStack_104 = *(int *)pcVar37;" (assignment_expression "iStack_104 = *(int *)pcVar37" identifier = (pointer_expression "*(int *)pcVar37" * (cast_expression "(int *)pcVar37" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0);" (assignment_expression "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0)" identifier = (call_expression "(**(code **)(pcStack_100 + -0x76e0))(uStack_90,pOVar23,uStack_a0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e0)" * (cast_expression "(code **)(pcStack_100 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e0)" ( (binary_expression "pcStack_100 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_90,pOVar23,uStack_a0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000e9704;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000e9704;" goto statement_identifier ;)) (labeled_statement "LAB_000e9768:\n                  uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);" statement_identifier : (expression_statement "uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13((char)p_Var32,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13((char)p_Var32,uStack_f8._1_3_)" identifier (argument_list "((char)p_Var32,uStack_f8._1_3_)" ( (cast_expression "(char)p_Var32" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)pRVar26)(puVar29,puVar30);" (call_expression "(*(code *)pRVar26)(puVar29,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar29,puVar30)" ( identifier , identifier ))) ;) (expression_statement "pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);" (assignment_expression "pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar12->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar12->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar12->calculated_value_ + 1" (cast_expression "(int)&pRVar12->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar12->calculated_value_" & (field_expression "pRVar12->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar37 = pcVar37 + 0xc;" (assignment_expression "pcVar37 = pcVar37 + 0xc" identifier = (binary_expression "pcVar37 + 0xc" identifier + number_literal)) ;) (expression_statement "pRVar13 = pRStack_94;" (assignment_expression "pRVar13 = pRStack_94" identifier = identifier) ;) (if_statement "if (pRStack_94 == pRVar12) goto LAB_000e978c;" if (parenthesized_expression "(pRStack_94 == pRVar12)" ( (binary_expression "pRStack_94 == pRVar12" identifier == identifier) )) (goto_statement "goto LAB_000e978c;" goto statement_identifier ;)) (goto_statement "goto LAB_000e96fc;" goto statement_identifier ;) }))) (labeled_statement "LAB_000e9704:\n                pcVar35 = pcStack_100;" statement_identifier : (expression_statement "pcVar35 = pcStack_100;" (assignment_expression "pcVar35 = pcStack_100" identifier = identifier) ;)) (expression_statement "pRVar24 = *(Relocate **)(pcVar37 + 4);" (assignment_expression "pRVar24 = *(Relocate **)(pcVar37 + 4)" identifier = (pointer_expression "*(Relocate **)(pcVar37 + 4)" * (cast_expression "(Relocate **)(pcVar37 + 4)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 4)" ( (binary_expression "pcVar37 + 4" identifier + number_literal) ))))) ;) (expression_statement "pRVar13 = (Relocate *)((uint)pRVar24 >> 8);" (assignment_expression "pRVar13 = (Relocate *)((uint)pRVar24 >> 8)" identifier = (cast_expression "(Relocate *)((uint)pRVar24 >> 8)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pRVar24 >> 8)" ( (binary_expression "(uint)pRVar24 >> 8" (cast_expression "(uint)pRVar24" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pRStack_88 <= pRVar13) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }" if (parenthesized_expression "(pRStack_88 <= pRVar13)" ( (binary_expression "pRStack_88 <= pRVar13" identifier <= identifier) )) (compound_statement "{\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*(code *)pRVar26)(puVar29,puVar30);\nLAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar13 = pRStack_94;\n                  if (pRStack_94 == pRVar12) goto LAB_000e978c;\n                  goto LAB_000e96fc;\n                }" { (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" identifier = (binary_expression "uStack_f8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(puVar29,puVar30);" (call_expression "(*(code *)pRVar26)(puVar29,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar29,puVar30)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000e96e0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);" statement_identifier : (expression_statement "pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);" (assignment_expression "pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar12->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar12->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar12->calculated_value_ + 1" (cast_expression "(int)&pRVar12->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar12->calculated_value_" & (field_expression "pRVar12->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "*(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1;" (assignment_expression "*(int *)(puVar29 + 0xc) = *(int *)(puVar29 + 0xc) + 1" (pointer_expression "*(int *)(puVar29 + 0xc)" * (cast_expression "(int *)(puVar29 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xc)" ( (binary_expression "puVar29 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar29 + 0xc) + 1" (pointer_expression "*(int *)(puVar29 + 0xc)" * (cast_expression "(int *)(puVar29 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xc)" ( (binary_expression "puVar29 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar37 = pcVar37 + 0xc;" (assignment_expression "pcVar37 = pcVar37 + 0xc" identifier = (binary_expression "pcVar37 + 0xc" identifier + number_literal)) ;) (expression_statement "pRVar13 = pRStack_94;" (assignment_expression "pRVar13 = pRStack_94" identifier = identifier) ;) (if_statement "if (pRStack_94 == pRVar12) goto LAB_000e978c;" if (parenthesized_expression "(pRStack_94 == pRVar12)" ( (binary_expression "pRStack_94 == pRVar12" identifier == identifier) )) (goto_statement "goto LAB_000e978c;" goto statement_identifier ;)) (goto_statement "goto LAB_000e96fc;" goto statement_identifier ;) })) (expression_statement "pRVar25 = (Relocate *)((int)pRVar13 * 0x10);" (assignment_expression "pRVar25 = (Relocate *)((int)pRVar13 * 0x10)" identifier = (cast_expression "(Relocate *)((int)pRVar13 * 0x10)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar13 * 0x10)" ( (binary_expression "(int)pRVar13 * 0x10" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (pRVar14 != (Relocate *)0x0) {\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }" if (parenthesized_expression "(pRVar14 != (Relocate *)0x0)" ( (binary_expression "pRVar14 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pRVar18 = pRVar14 + (int)pRVar13 * 2;\n                  uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;\n                  if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_100;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  goto LAB_000e96e0;\n                }" { (expression_statement "pRVar18 = pRVar14 + (int)pRVar13 * 2;" (assignment_expression "pRVar18 = pRVar14 + (int)pRVar13 * 2" identifier = (binary_expression "pRVar14 + (int)pRVar13 * 2" identifier + (binary_expression "(int)pRVar13 * 2" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6;" (assignment_expression "uVar5 = (uint)*(ushort *)&pRVar18[1].field_0x6" identifier = (binary_expression "(uint)*(ushort *)&pRVar18[1].field_0x6" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)&pRVar18[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].field_0x6" & (field_expression "pRVar18[1].field_0x6" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier))))) ;) (if_statement "if (uVar5 < 0xff00) {\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }" if (parenthesized_expression "(uVar5 < 0xff00)" ( (binary_expression "uVar5 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;\n                    uVar19 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar35 = pcStack_100;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }" { (labeled_statement "LAB_000e9898:\n                    if (uVar5 == 0) goto LAB_000e9744;" statement_identifier : (if_statement "if (uVar5 == 0) goto LAB_000e9744;" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9744;" goto statement_identifier ;))) (expression_statement "uVar19 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar19 = *(uint *)(pcStack_100 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = pcStack_100;" (assignment_expression "pcVar35 = pcStack_100" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000e9d0c;" if (parenthesized_expression "((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5)" ( (binary_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5" (call_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9d0c;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000e9768;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + uVar5 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + uVar5 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar5 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9768;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar18[1].calculate_only_;" (assignment_expression "bVar1 = pRVar18[1].calculate_only_" identifier = (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)) ;) }) (else_clause "else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }" else (compound_statement "{\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;\n                  }" { (if_statement "if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }" if (parenthesized_expression "(uVar5 == 0xffff)" ( (binary_expression "uVar5 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_e8 = pRVar13;\n                      pRStack_ec = pRVar24;\n                      pRStack_e4 = pRVar25;\n                      pRStack_e0 = pRVar18;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_ec;\n                      pRStack_ec = pRStack_e8;\n                      pRVar13 = pRStack_e8;\n                      pRStack_e8 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);\n                      pRVar13 = pRStack_ec;\n                      pRVar24 = pRStack_e8;\n                      pRVar25 = pRStack_e4;\n                      pRVar18 = pRStack_e0;\n                      goto LAB_000e9898;\n                    }" { (expression_statement "iVar2 = *(int *)&pOVar23->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar23->entsize_" identifier = (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_e8 = pRVar13;" (assignment_expression "pRStack_e8 = pRVar13" identifier = identifier) ;) (expression_statement "pRStack_ec = pRVar24;" (assignment_expression "pRStack_ec = pRVar24" identifier = identifier) ;) (expression_statement "pRStack_e4 = pRVar25;" (assignment_expression "pRStack_e4 = pRVar25" identifier = identifier) ;) (expression_statement "pRStack_e0 = pRVar18;" (assignment_expression "pRStack_e0 = pRVar18" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }" { (expression_statement "iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);" (assignment_expression "iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23)" identifier = (call_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23)" (parenthesized_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar23)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar23->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar23->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar5 = (uint)pRStack_ec;" (assignment_expression "uVar5 = (uint)pRStack_ec" identifier = (cast_expression "(uint)pRStack_ec" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pRStack_ec = pRStack_e8;" (assignment_expression "pRStack_ec = pRStack_e8" identifier = identifier) ;) (expression_statement "pRVar13 = pRStack_e8;" (assignment_expression "pRVar13 = pRStack_e8" identifier = identifier) ;) (expression_statement "pRStack_e8 = (Relocate *)uVar5;" (assignment_expression "pRStack_e8 = (Relocate *)uVar5" identifier = (cast_expression "(Relocate *)uVar5" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13);" (assignment_expression "uVar5 = (**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13)" identifier = (call_expression "(**(code **)(pcStack_100 + -0x7790))(iVar2,pOVar23,pRVar13)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7790)" * (pointer_expression "*(code **)(pcStack_100 + -0x7790)" * (cast_expression "(code **)(pcStack_100 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7790)" ( (binary_expression "pcStack_100 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar23,pRVar13)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar13 = pRStack_ec;" (assignment_expression "pRVar13 = pRStack_ec" identifier = identifier) ;) (expression_statement "pRVar24 = pRStack_e8;" (assignment_expression "pRVar24 = pRStack_e8" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_e4;" (assignment_expression "pRVar25 = pRStack_e4" identifier = identifier) ;) (expression_statement "pRVar18 = pRStack_e0;" (assignment_expression "pRVar18 = pRStack_e0" identifier = identifier) ;) (goto_statement "goto LAB_000e9898;" goto statement_identifier ;) })) (labeled_statement "LAB_000e9744:\n                    bVar1 = pRVar18[1].calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar18[1].calculate_only_;" (assignment_expression "bVar1 = pRVar18[1].calculate_only_" identifier = (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_100;" (assignment_expression "pcVar35 = pcStack_100" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }" { (expression_statement "pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "pRVar13 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]" identifier = (cast_expression "(Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ]))) ;) (if_statement "if (pRVar13 == pRStack_f0) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(pRVar13 == pRStack_f0)" ( (binary_expression "pRVar13 == pRStack_f0" identifier == identifier) )) (compound_statement "{\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000e9cec;" if (parenthesized_expression "((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5)" ( (binary_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5" (call_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9cec;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + uVar5 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + uVar5 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar5 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar5 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar5 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (*(code *)pRVar13)(pOVar23,uVar5);" (assignment_expression "iVar2 = (*(code *)pRVar13)(pOVar23,uVar5)" identifier = (call_expression "(*(code *)pRVar13)(pOVar23,uVar5)" (parenthesized_expression "(*(code *)pRVar13)" ( (pointer_expression "*(code *)pRVar13" * (cast_expression "(code *)pRVar13" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pOVar23,uVar5)" ( identifier , identifier )))) ;) (expression_statement "uVar5 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar5 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar5 & 0x7fffffff | 0x80000000" (binary_expression "uVar5 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_f8 = CONCAT13(1,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13(1,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_f8._1_3_)" identifier (argument_list "(1,uStack_f8._1_3_)" ( number_literal , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)pRVar26)(puVar29,puVar30);" (call_expression "(*(code *)pRVar26)(puVar29,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar29,puVar30)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }" else (compound_statement "{\n                    if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;\n                    pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;\n                    if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }\n                    pRVar25->calculated_value_ = 0xfffffffe;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*(code *)pRVar26)(puVar29,puVar30);\n                  }" { (if_statement "if (((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000e9768;" if (parenthesized_expression "(((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)" ( (binary_expression "((uint)pRVar24 & 0xff) == 0 && pRVar13 == (Relocate *)0x0" (binary_expression "((uint)pRVar24 & 0xff) == 0" (parenthesized_expression "((uint)pRVar24 & 0xff)" ( (binary_expression "(uint)pRVar24 & 0xff" (cast_expression "(uint)pRVar24" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) && (binary_expression "pRVar13 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_000e9768;" goto statement_identifier ;)) (expression_statement "pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);" (assignment_expression "pRVar25 = (Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" identifier = (cast_expression "(Relocate *)\n                              ((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" ( (binary_expression "(int)&pRVar25->calculated_value_ +\n                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill" (cast_expression "(int)&pRVar25->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar25->calculated_value_" & (field_expression "pRVar25->calculated_value_" identifier -> field_identifier))) + (cast_expression "(int)&pOVar23->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar23->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar23->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier) -> field_identifier)))) )))) ;) (if_statement "if ((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000e9cb4;" if (parenthesized_expression "((Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13)" ( (binary_expression "(Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=\n                        pRVar13" (cast_expression "(Relocate *)\n                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4)" ( (binary_expression "*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4" (binary_expression "*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_" (pointer_expression "*(int *)&pOVar23->field_0xec" * (cast_expression "(int *)&pOVar23->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->field_0xec" & (field_expression "pOVar23->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar23->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9cb4;" goto statement_identifier ;)) (if_statement "if ((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)) {\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }" if (parenthesized_expression "((pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe))" ( (binary_expression "(pRVar25->calculated_value_ != 0) &&\n                       (pRVar25->calculated_value_ != 0xfffffffe)" (parenthesized_expression "(pRVar25->calculated_value_ != 0)" ( (binary_expression "pRVar25->calculated_value_ != 0" (field_expression "pRVar25->calculated_value_" identifier -> field_identifier) != number_literal) )) && (parenthesized_expression "(pRVar25->calculated_value_ != 0xfffffffe)" ( (binary_expression "pRVar25->calculated_value_ != 0xfffffffe" (field_expression "pRVar25->calculated_value_" identifier -> field_identifier) != number_literal) ))) )) (compound_statement "{\n                      uVar5 = *(uint *)(pcStack_100 + -0x77f0);\n                      pRVar13 = pRVar12;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);\n                      pRVar12 = pRVar13;\n                    }" { (expression_statement "uVar5 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar5 = *(uint *)(pcStack_100 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pRVar13 = pRVar12;" (assignment_expression "pRVar13 = pRVar12" identifier = identifier) ;) (labeled_statement "LAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);" statement_identifier : (expression_statement "(**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0);" (call_expression "(**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7810)" * (pointer_expression "*(code **)(pcStack_100 + -0x7810)" * (cast_expression "(code **)(pcStack_100 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7810)" ( (binary_expression "pcStack_100 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x48c0)" ( (binary_expression "*(uint *)(pcStack_100 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcStack_100 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_100 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x7fc4)" ( (binary_expression "pcStack_100 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar5 - 0x48c0" identifier - number_literal) ))) ;)) (expression_statement "pRVar12 = pRVar13;" (assignment_expression "pRVar12 = pRVar13" identifier = identifier) ;) })) (expression_statement "pRVar25->calculated_value_ = 0xfffffffe;" (assignment_expression "pRVar25->calculated_value_ = 0xfffffffe" (field_expression "pRVar25->calculated_value_" identifier -> field_identifier) = number_literal) ;) (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" identifier = (binary_expression "uStack_f8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(puVar29,puVar30);" (call_expression "(*(code *)pRVar26)(puVar29,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar29,puVar30)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000e96e0;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);" (call_expression "(**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7810)" * (pointer_expression "*(code **)(pcStack_100 + -0x7810)" * (cast_expression "(code **)(pcStack_100 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7810)" ( (binary_expression "pcStack_100 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0)" ( (binary_expression "*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcStack_100 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_100 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x7fc4)" ( (binary_expression "pcStack_100 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcStack_100 + -0x77f0) - 0x50e0" (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000e9cb4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x5068)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x5068" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x5098)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x3588" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x5098" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000e9cec:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x33a0" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "LAB_000e9d08:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);" statement_identifier : (expression_statement "uVar19 = *(uint *)(pcVar35 + -0x77f0);" (assignment_expression "uVar19 = *(uint *)(pcVar35 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000e9d0c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar19 - 0x34dc" identifier - number_literal) ))) ;)) (labeled_statement "LAB_000e9d24:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50b0)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x50b0" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "switchD_000e9b48_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);" statement_identifier : (expression_statement "pcVar31 = *(code **)(pcVar35 + -0x7810);" (assignment_expression "pcVar31 = *(code **)(pcVar35 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar38 = emit_relocs_scan;" (assignment_expression "pcVar38 = emit_relocs_scan" identifier = identifier) ;) (expression_statement "(*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8);" (call_expression "(*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8)" (parenthesized_expression "(*pcVar31)" ( (pointer_expression "*pcVar31" * identifier) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x50c8)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x50c8" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (expression_statement "pRVar24 = pRStack_e8;" (assignment_expression "pRVar24 = pRStack_e8" identifier = identifier) ;) (expression_statement "pRVar13 = pRStack_ec;" (assignment_expression "pRVar13 = pRStack_ec" identifier = identifier) ;) (expression_statement "pcVar35 = pcVar31 + 0x3df4e4;" (assignment_expression "pcVar35 = pcVar31 + 0x3df4e4" identifier = (binary_expression "pcVar31 + 0x3df4e4" identifier + number_literal)) ;) (expression_statement "pRStack_134 = pRVar14;" (assignment_expression "pRStack_134 = pRVar14" identifier = identifier) ;) (expression_statement "puStack_140 = puVar29;" (assignment_expression "puStack_140 = puVar29" identifier = identifier) ;) (expression_statement "uVar5 = (uint)bStack_f1;" (assignment_expression "uVar5 = (uint)bStack_f1" identifier = (cast_expression "(uint)bStack_f1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pOVar22 = pOVar21;" (assignment_expression "pOVar22 = pOVar21" identifier = identifier) ;) (expression_statement "pcVar34 = pcStack_100;" (assignment_expression "pcVar34 = pcStack_100" identifier = identifier) ;) (expression_statement "pcStack_160 = pcVar35;" (assignment_expression "pcStack_160 = pcVar35" identifier = identifier) ;) (expression_statement "pcStack_13c = pcVar37;" (assignment_expression "pcStack_13c = pcVar37" identifier = identifier) ;) (expression_statement "pRStack_138 = pRVar26;" (assignment_expression "pRStack_138 = pRVar26" identifier = identifier) ;) (expression_statement "pOStack_130 = pOVar23;" (assignment_expression "pOStack_130 = pOVar23" identifier = identifier) ;) (expression_statement "pRStack_12c = pRVar12;" (assignment_expression "pRStack_12c = pRVar12" identifier = identifier) ;) (expression_statement "uStack_128 = uVar7;" (assignment_expression "uStack_128 = uVar7" identifier = identifier) ;) (expression_statement "puStack_124 = puVar30;" (assignment_expression "puStack_124 = puVar30" identifier = identifier) ;) (expression_statement "p_Stack_120 = p_Var32;" (assignment_expression "p_Stack_120 = p_Var32" identifier = identifier) ;) (expression_statement "pcStack_11c = pcVar38;" (assignment_expression "pcStack_11c = pcVar38" identifier = identifier) ;) (if_statement "if (iStack_104 == 9) {\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }" if (parenthesized_expression "(iStack_104 == 9)" ( (binary_expression "iStack_104 == 9" identifier == number_literal) )) (compound_statement "{\n                pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);\n                pRVar14 = pRStack_150;\n                if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }\nLAB_000e9f34:\n                return SUB41(pRVar14,0);\n              }" { (expression_statement "pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8);" (assignment_expression "pRStack_150 = *(Relocate **)(pcVar31 + 0x3d7dc8)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d7dc8)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d7dc8)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7dc8)" ( (binary_expression "pcVar31 + 0x3d7dc8" identifier + number_literal) ))))) ;) (expression_statement "pRVar14 = pRStack_150;" (assignment_expression "pRVar14 = pRStack_150" identifier = identifier) ;) (if_statement "if (pRStack_fc != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }" if (parenthesized_expression "(pRStack_fc != (Relocate *)0x0)" ( (binary_expression "pRStack_fc != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pRVar26 = (Relocate *)0x0;\n                  pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                  p_Var32 = (_func_int_varargs *)&uStack_158;\n                  puVar30 = (uint *)0xff00;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);\n                }" { (expression_statement "pRVar26 = (Relocate *)0x0;" (assignment_expression "pRVar26 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00);" (assignment_expression "pRVar12 = *(Relocate **)(pcVar31 + 0x3d7e00)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d7e00)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d7e00)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7e00)" ( (binary_expression "pcVar31 + 0x3d7e00" identifier + number_literal) ))))) ;) (expression_statement "p_Var32 = (_func_int_varargs *)&uStack_158;" (assignment_expression "p_Var32 = (_func_int_varargs *)&uStack_158" identifier = (cast_expression "(_func_int_varargs *)&uStack_158" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_158" & identifier))) ;) (expression_statement "puVar30 = (uint *)0xff00;" (assignment_expression "puVar30 = (uint *)0xff00" identifier = (cast_expression "(uint *)0xff00" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  } while (pRStack_fc != pRVar26);" do (compound_statement "{\n                    if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 8;\n                    pRVar14 = pRStack_fc;\n                  }" { (if_statement "if (uVar5 == 0) {\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }\n                    else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                      if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }\n                      *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                    }" { (labeled_statement "LAB_000ea0b8:\n                      uVar7 = *(uint *)(pcVar34 + 4);" statement_identifier : (expression_statement "uVar7 = *(uint *)(pcVar34 + 4);" (assignment_expression "uVar7 = *(uint *)(pcVar34 + 4)" identifier = (pointer_expression "*(uint *)(pcVar34 + 4)" * (cast_expression "(uint *)(pcVar34 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + 4)" ( (binary_expression "pcVar34 + 4" identifier + number_literal) ))))) ;)) (expression_statement "pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);" (assignment_expression "pRVar14 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8)" identifier = (cast_expression "(Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8)" ( (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8" (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) >> number_literal) )))) ;) (if_statement "if (pRVar14 < pRStack_f0) {\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }" if (parenthesized_expression "(pRVar14 < pRStack_f0)" ( (binary_expression "pRVar14 < pRStack_f0" identifier < identifier) )) (compound_statement "{\n                        in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                        pcVar35 = pcStack_160;\n                        if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;\n                        pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                        uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        pcVar35 = pcStack_160;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                      }" { (expression_statement "in_t1 = (Relocate *)((int)pRVar14 * 0x10);" (assignment_expression "in_t1 = (Relocate *)((int)pRVar14 * 0x10)" identifier = (cast_expression "(Relocate *)((int)pRVar14 * 0x10)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar14 * 0x10)" ( (binary_expression "(int)pRVar14 * 0x10" (cast_expression "(int)pRVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pcVar35 = pcStack_160;" (assignment_expression "pcVar35 = pcStack_160" identifier = identifier) ;) (if_statement "if (pRVar13 == (Relocate *)0x0) goto LAB_000ea38c;" if (parenthesized_expression "(pRVar13 == (Relocate *)0x0)" ( (binary_expression "pRVar13 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ea38c;" goto statement_identifier ;)) (expression_statement "pRVar25 = pRVar13 + (int)pRVar14 * 2;" (assignment_expression "pRVar25 = pRVar13 + (int)pRVar14 * 2" identifier = (binary_expression "pRVar13 + (int)pRVar14 * 2" identifier + (binary_expression "(int)pRVar14 * 2" (cast_expression "(int)pRVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);" (assignment_expression "uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8)" identifier = (binary_expression "(*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8)" (binary_expression "(*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8" (parenthesized_expression "(*(ushort *)&pRVar25[1].field_0x6 & 0xff)" ( (binary_expression "*(ushort *)&pRVar25[1].field_0x6 & 0xff" (pointer_expression "*(ushort *)&pRVar25[1].field_0x6" * (cast_expression "(ushort *)&pRVar25[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25[1].field_0x6" & (field_expression "pRVar25[1].field_0x6" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)&pRVar25[1].field_0x6 >> 8)" ( (binary_expression "*(ushort *)&pRVar25[1].field_0x6 >> 8" (pointer_expression "*(ushort *)&pRVar25[1].field_0x6" * (cast_expression "(ushort *)&pRVar25[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25[1].field_0x6" & (field_expression "pRVar25[1].field_0x6" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)))) >> number_literal) ))))) ;) (if_statement "if (uVar7 < 0xff00) {\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }" if (parenthesized_expression "(uVar7 < 0xff00)" ( (binary_expression "uVar7 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;\n                          uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar35 = pcStack_160;\n                          if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }" { (labeled_statement "LAB_000ea208:\n                          if (uVar7 == 0) goto LAB_000ea108;" statement_identifier : (if_statement "if (uVar7 == 0) goto LAB_000ea108;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000ea108;" goto statement_identifier ;))) (expression_statement "uVar19 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar19 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = pcStack_160;" (assignment_expression "pcVar35 = pcStack_160" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ea3a8;" if (parenthesized_expression "((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7)" ( (binary_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2) <= uVar7" (call_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2)" ( (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                    >> 2" (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_" (cast_expression "(int)pOVar21->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea3a8;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ea1b0;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar21->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ea1b0;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar25[1].calculate_only_;" (assignment_expression "bVar1 = pRVar25[1].calculate_only_" identifier = (field_expression "pRVar25[1].calculate_only_" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)) ;) }) (else_clause "else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }" else (compound_statement "{\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;\n                        }" { (if_statement "if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }" if (parenthesized_expression "(uVar7 == 0xffff)" ( (binary_expression "uVar7 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                            iVar2 = *(int *)&pOVar21->entsize_;\n                            pRStack_14c = pRVar14;\n                            pRStack_148 = in_t1;\n                            pRStack_144 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);\n                            pRVar14 = pRStack_14c;\n                            in_t1 = pRStack_148;\n                            pRVar25 = pRStack_144;\n                            goto LAB_000ea208;\n                          }" { (expression_statement "iVar2 = *(int *)&pOVar21->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar21->entsize_" identifier = (pointer_expression "*(int *)&pOVar21->entsize_" * (cast_expression "(int *)&pOVar21->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->entsize_" & (field_expression "pOVar21->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_14c = pRVar14;" (assignment_expression "pRStack_14c = pRVar14" identifier = identifier) ;) (expression_statement "pRStack_148 = in_t1;" (assignment_expression "pRStack_148 = in_t1" identifier = identifier) ;) (expression_statement "pRStack_144 = pRVar25;" (assignment_expression "pRStack_144 = pRVar25" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);\n                              *(int *)&pOVar21->entsize_ = iVar2;\n                            }" { (expression_statement "iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21);" (assignment_expression "iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21)" identifier = (call_expression "(*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar21)" (parenthesized_expression "(*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar21->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar21->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar21->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar21)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar21->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar21->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar21->entsize_" * (cast_expression "(int *)&pOVar21->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->entsize_" & (field_expression "pOVar21->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c);" (assignment_expression "uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_14c)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7790)" * (pointer_expression "*(code **)(pcStack_160 + -0x7790)" * (cast_expression "(code **)(pcStack_160 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7790)" ( (binary_expression "pcStack_160 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar21,pRStack_14c)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar14 = pRStack_14c;" (assignment_expression "pRVar14 = pRStack_14c" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_148;" (assignment_expression "in_t1 = pRStack_148" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_144;" (assignment_expression "pRVar25 = pRStack_144" identifier = identifier) ;) (goto_statement "goto LAB_000ea208;" goto statement_identifier ;) })) (labeled_statement "LAB_000ea108:\n                          bVar1 = pRVar25[1].calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar25[1].calculate_only_;" (assignment_expression "bVar1 = pRVar25[1].calculate_only_" identifier = (field_expression "pRVar25[1].calculate_only_" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_160;" (assignment_expression "pcVar35 = pcStack_160" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }\n                        else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                          pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }" { (expression_statement "pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]\n                          ;" (assignment_expression "pRVar14 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]" identifier = (cast_expression "(Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(pOVar21->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar21->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ]))) ;) (if_statement "if (pRVar14 == pRStack_150) {\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" if (parenthesized_expression "(pRVar14 == pRStack_150)" ( (binary_expression "pRVar14 == pRStack_150" identifier == identifier) )) (compound_statement "{\n                            if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;\n                            iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" { (if_statement "if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ea354;" if (parenthesized_expression "((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7)" ( (binary_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2) <= uVar7" (call_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2)" ( (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_\n                                      >> 2" (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_" (cast_expression "(int)pOVar21->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea354;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar21->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" else (compound_statement "{\n                            iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" { (expression_statement "iVar2 = (*(code *)pRVar14)(pOVar21,uVar7);" (assignment_expression "iVar2 = (*(code *)pRVar14)(pOVar21,uVar7)" identifier = (call_expression "(*(code *)pRVar14)(pOVar21,uVar7)" (parenthesized_expression "(*(code *)pRVar14)" ( (pointer_expression "*(code *)pRVar14" * (cast_expression "(code *)pRVar14" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pOVar21,uVar7)" ( identifier , identifier )))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar7 & 0x7fffffff | 0x80000000" (binary_expression "uVar7 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_158 = CONCAT13(2,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(2,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_158._1_3_)" identifier (argument_list "(2,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)pRVar12)(pRVar24,p_Var32);" (call_expression "(*(code *)pRVar12)(pRVar24,p_Var32)" (parenthesized_expression "(*(code *)pRVar12)" ( (pointer_expression "*(code *)pRVar12" * (cast_expression "(code *)pRVar12" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar24,p_Var32)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }" else (compound_statement "{\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;\n                          if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;\n                          in_t1->calculated_value_ = 0xfffffffe;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*(code *)pRVar12)(pRVar24,p_Var32);\n                        }" { (expression_statement "in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);" (assignment_expression "in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill)" identifier = (cast_expression "(Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill)" ( (binary_expression "(int)&in_t1->calculated_value_ +\n                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill" (cast_expression "(int)&in_t1->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&in_t1->calculated_value_" & (field_expression "in_t1->calculated_value_" identifier -> field_identifier))) + (cast_expression "(int)&pOVar21->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar21->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar21->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar21->free_space_fill_" identifier -> field_identifier) -> field_identifier)))) )))) ;) (if_statement "if ((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14) goto LAB_000ea338;" if (parenthesized_expression "((Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14)" ( (binary_expression "(Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)\n                              <= pRVar14" (cast_expression "(Relocate *)\n                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)" ( (binary_expression "*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4" (binary_expression "*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_" (pointer_expression "*(int *)&pOVar21->field_0xec" * (cast_expression "(int *)&pOVar21->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->field_0xec" & (field_expression "pOVar21->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar21->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->free_space_fill_" identifier -> field_identifier))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea338;" goto statement_identifier ;)) (if_statement "if ((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;" if (parenthesized_expression "((in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe))" ( (binary_expression "(in_t1->calculated_value_ != 0) &&\n                             (uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)" (parenthesized_expression "(in_t1->calculated_value_ != 0)" ( (binary_expression "in_t1->calculated_value_ != 0" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) )) && (parenthesized_expression "(uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe)" ( (comma_expression "uVar7 = *(uint *)(pcStack_160 + -0x77f0),\n                             in_t1->calculated_value_ != 0xfffffffe" (assignment_expression "uVar7 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "in_t1->calculated_value_ != 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal)) ))) )) (goto_statement "goto LAB_000e9f98;" goto statement_identifier ;)) (expression_statement "in_t1->calculated_value_ = 0xfffffffe;" (assignment_expression "in_t1->calculated_value_ = 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) = number_literal) ;) (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar12)(pRVar24,p_Var32);" (call_expression "(*(code *)pRVar12)(pRVar24,p_Var32)" (parenthesized_expression "(*(code *)pRVar12)" ( (pointer_expression "*(code *)pRVar12" * (cast_expression "(code *)pRVar12" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar24,p_Var32)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }" else (compound_statement "{\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*(code *)pRVar12)(pRVar24,p_Var32);\n                      }" { (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar12)(pRVar24,p_Var32);" (call_expression "(*(code *)pRVar12)(pRVar24,p_Var32)" (parenthesized_expression "(*(code *)pRVar12)" ( (pointer_expression "*(code *)pRVar12" * (cast_expression "(code *)pRVar12" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar24,p_Var32)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;" (assignment_expression "*(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1" (pointer_expression "*(int *)((int)pRVar24 + 0xc)" * (cast_expression "(int *)((int)pRVar24 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar24 + 0xc)" ( (binary_expression "(int)pRVar24 + 0xc" (cast_expression "(int)pRVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pRVar24 + 0xc) + 1" (pointer_expression "*(int *)((int)pRVar24 + 0xc)" * (cast_expression "(int *)((int)pRVar24 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar24 + 0xc)" ( (binary_expression "(int)pRVar24 + 0xc" (cast_expression "(int)pRVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }" else (compound_statement "{\n                      uVar7 = *(uint *)pcVar34;\n                      uStack_168 = 0;\n                      pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*(code *)pRVar12)(pRVar24,p_Var32);\n                    }" { (expression_statement "uVar7 = *(uint *)pcVar34;" (assignment_expression "uVar7 = *(uint *)pcVar34" identifier = (pointer_expression "*(uint *)pcVar34" * (cast_expression "(uint *)pcVar34" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_168 = 0;" (assignment_expression "uStack_168 = 0" identifier = number_literal) ;) (expression_statement "pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRStack_164 = (Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                                    ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                    ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);" (assignment_expression "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_160 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_160 + -0x76e0)" * (cast_expression "(code **)(pcStack_160 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x76e0)" ( (binary_expression "pcStack_160 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_f8,pOVar21,uStack_108)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000ea0b8;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ea0b8;" goto statement_identifier ;)) (labeled_statement "LAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);" statement_identifier : (expression_statement "uStack_158 = CONCAT13(8,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(8,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_158._1_3_)" identifier (argument_list "(8,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)pRVar12)(pRVar24,p_Var32);" (call_expression "(*(code *)pRVar12)(pRVar24,p_Var32)" (parenthesized_expression "(*(code *)pRVar12)" ( (pointer_expression "*(code *)pRVar12" * (cast_expression "(code *)pRVar12" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar24,p_Var32)" ( identifier , identifier ))) ;) }))) (expression_statement "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);" (assignment_expression "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar26->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar26->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar26->calculated_value_ + 1" (cast_expression "(int)&pRVar26->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar26->calculated_value_" & (field_expression "pRVar26->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar34 = pcVar34 + 8;" (assignment_expression "pcVar34 = pcVar34 + 8" identifier = (binary_expression "pcVar34 + 8" identifier + number_literal)) ;) (expression_statement "pRVar14 = pRStack_fc;" (assignment_expression "pRVar14 = pRStack_fc" identifier = identifier) ;) }) while (parenthesized_expression "(pRStack_fc != pRVar26)" ( (binary_expression "pRStack_fc != pRVar26" identifier != identifier) )) ;) })) (labeled_statement "LAB_000e9f34:\n                return SUB41(pRVar14,0);" statement_identifier : (return_statement "return SUB41(pRVar14,0);" return (call_expression "SUB41(pRVar14,0)" identifier (argument_list "(pRVar14,0)" ( identifier , number_literal ))) ;)) })) (if_statement "if (iStack_104 == 4) {\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }" if (parenthesized_expression "(iStack_104 == 4)" ( (binary_expression "iStack_104 == 4" identifier == number_literal) )) (compound_statement "{\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);\n                pRVar14 = pRStack_fc;\n                if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;\n                pRVar12 = (Relocate *)0x0;\n                p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);\n                puVar30 = &uStack_158;\nLAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\nLAB_000e9e14:\n                pcVar35 = pcStack_160;\n                uVar7 = *(uint *)(pcVar34 + 4);\n                pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }\n                in_t1 = (Relocate *)((int)pRVar14 * 0x10);\n                if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);\n              }" { (expression_statement "pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00);" (assignment_expression "pRVar26 = *(Relocate **)(pcVar31 + 0x3d7e00)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d7e00)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d7e00)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7e00)" ( (binary_expression "pcVar31 + 0x3d7e00" identifier + number_literal) ))))) ;) (expression_statement "pRVar14 = pRStack_fc;" (assignment_expression "pRVar14 = pRStack_fc" identifier = identifier) ;) (if_statement "if (pRStack_fc == (Relocate *)0x0) goto LAB_000e9f34;" if (parenthesized_expression "(pRStack_fc == (Relocate *)0x0)" ( (binary_expression "pRStack_fc == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e9f34;" goto statement_identifier ;)) (expression_statement "pRVar12 = (Relocate *)0x0;" (assignment_expression "pRVar12 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8);" (assignment_expression "p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7dc8)" identifier = (pointer_expression "*(_func_int_varargs **)(pcVar31 + 0x3d7dc8)" * (cast_expression "(_func_int_varargs **)(pcVar31 + 0x3d7dc8)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7dc8)" ( (binary_expression "pcVar31 + 0x3d7dc8" identifier + number_literal) ))))) ;) (expression_statement "puVar30 = &uStack_158;" (assignment_expression "puVar30 = &uStack_158" identifier = (pointer_expression "&uStack_158" & identifier)) ;) (labeled_statement "LAB_000e9e0c:\n                if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }" statement_identifier : (if_statement "if (uVar5 != 0) {\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n                  uVar7 = *(uint *)pcVar34;\n                  uStack_168 = 0;\n                  pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);\n                  if (iVar2 != 0) goto LAB_000e9e14;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*(code *)pRVar26)(pRVar24,puVar30);\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }" { (expression_statement "uVar7 = *(uint *)pcVar34;" (assignment_expression "uVar7 = *(uint *)pcVar34" identifier = (pointer_expression "*(uint *)pcVar34" * (cast_expression "(uint *)pcVar34" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_168 = 0;" (assignment_expression "uStack_168 = 0" identifier = number_literal) ;) (expression_statement "pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRStack_164 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108);" (assignment_expression "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x76e0))(uStack_f8,pOVar21,uStack_108)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_160 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_160 + -0x76e0)" * (cast_expression "(code **)(pcStack_160 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x76e0)" ( (binary_expression "pcStack_160 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_f8,pOVar21,uStack_108)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000e9e14;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000e9e14;" goto statement_identifier ;)) (labeled_statement "LAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);" statement_identifier : (expression_statement "uStack_158 = CONCAT13(8,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(8,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_158._1_3_)" identifier (argument_list "(8,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)pRVar26)(pRVar24,puVar30);" (call_expression "(*(code *)pRVar26)(pRVar24,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar24,puVar30)" ( identifier , identifier ))) ;) (expression_statement "pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);" (assignment_expression "pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar12->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar12->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar12->calculated_value_ + 1" (cast_expression "(int)&pRVar12->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar12->calculated_value_" & (field_expression "pRVar12->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar34 = pcVar34 + 0xc;" (assignment_expression "pcVar34 = pcVar34 + 0xc" identifier = (binary_expression "pcVar34 + 0xc" identifier + number_literal)) ;) (expression_statement "pRVar14 = pRStack_fc;" (assignment_expression "pRVar14 = pRStack_fc" identifier = identifier) ;) (if_statement "if (pRStack_fc == pRVar12) goto LAB_000e9f34;" if (parenthesized_expression "(pRStack_fc == pRVar12)" ( (binary_expression "pRStack_fc == pRVar12" identifier == identifier) )) (goto_statement "goto LAB_000e9f34;" goto statement_identifier ;)) (goto_statement "goto LAB_000e9e0c;" goto statement_identifier ;) }))) (labeled_statement "LAB_000e9e14:\n                pcVar35 = pcStack_160;" statement_identifier : (expression_statement "pcVar35 = pcStack_160;" (assignment_expression "pcVar35 = pcStack_160" identifier = identifier) ;)) (expression_statement "uVar7 = *(uint *)(pcVar34 + 4);" (assignment_expression "uVar7 = *(uint *)(pcVar34 + 4)" identifier = (pointer_expression "*(uint *)(pcVar34 + 4)" * (cast_expression "(uint *)(pcVar34 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + 4)" ( (binary_expression "pcVar34 + 4" identifier + number_literal) ))))) ;) (expression_statement "pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8);" (assignment_expression "pRVar14 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8)" identifier = (cast_expression "(Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8)" ( (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000 >> 8" (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                           ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) >> number_literal) )))) ;) (if_statement "if (pRStack_f0 <= pRVar14) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }" if (parenthesized_expression "(pRStack_f0 <= pRVar14)" ( (binary_expression "pRStack_f0 <= pRVar14" identifier <= identifier) )) (compound_statement "{\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar24,puVar30);\nLAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);\n                  *(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0xc;\n                  pRVar14 = pRStack_fc;\n                  if (pRStack_fc == pRVar12) goto LAB_000e9f34;\n                  goto LAB_000e9e0c;\n                }" { (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar24,puVar30);" (call_expression "(*(code *)pRVar26)(pRVar24,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar24,puVar30)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000e9df0:\n                  pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);" statement_identifier : (expression_statement "pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1);" (assignment_expression "pRVar12 = (Relocate *)((int)&pRVar12->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar12->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar12->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar12->calculated_value_ + 1" (cast_expression "(int)&pRVar12->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar12->calculated_value_" & (field_expression "pRVar12->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "*(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1;" (assignment_expression "*(int *)((int)pRVar24 + 0xc) = *(int *)((int)pRVar24 + 0xc) + 1" (pointer_expression "*(int *)((int)pRVar24 + 0xc)" * (cast_expression "(int *)((int)pRVar24 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar24 + 0xc)" ( (binary_expression "(int)pRVar24 + 0xc" (cast_expression "(int)pRVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pRVar24 + 0xc) + 1" (pointer_expression "*(int *)((int)pRVar24 + 0xc)" * (cast_expression "(int *)((int)pRVar24 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar24 + 0xc)" ( (binary_expression "(int)pRVar24 + 0xc" (cast_expression "(int)pRVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar34 = pcVar34 + 0xc;" (assignment_expression "pcVar34 = pcVar34 + 0xc" identifier = (binary_expression "pcVar34 + 0xc" identifier + number_literal)) ;) (expression_statement "pRVar14 = pRStack_fc;" (assignment_expression "pRVar14 = pRStack_fc" identifier = identifier) ;) (if_statement "if (pRStack_fc == pRVar12) goto LAB_000e9f34;" if (parenthesized_expression "(pRStack_fc == pRVar12)" ( (binary_expression "pRStack_fc == pRVar12" identifier == identifier) )) (goto_statement "goto LAB_000e9f34;" goto statement_identifier ;)) (goto_statement "goto LAB_000e9e0c;" goto statement_identifier ;) })) (expression_statement "in_t1 = (Relocate *)((int)pRVar14 * 0x10);" (assignment_expression "in_t1 = (Relocate *)((int)pRVar14 * 0x10)" identifier = (cast_expression "(Relocate *)((int)pRVar14 * 0x10)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar14 * 0x10)" ( (binary_expression "(int)pRVar14 * 0x10" (cast_expression "(int)pRVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (pRVar13 != (Relocate *)0x0) {\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }" if (parenthesized_expression "(pRVar13 != (Relocate *)0x0)" ( (binary_expression "pRVar13 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pRVar25 = pRVar13 + (int)pRVar14 * 2;\n                  uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_160;\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  goto LAB_000e9df0;\n                }" { (expression_statement "pRVar25 = pRVar13 + (int)pRVar14 * 2;" (assignment_expression "pRVar25 = pRVar13 + (int)pRVar14 * 2" identifier = (binary_expression "pRVar13 + (int)pRVar14 * 2" identifier + (binary_expression "(int)pRVar14 * 2" (cast_expression "(int)pRVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8);" (assignment_expression "uVar7 = (*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8)" identifier = (binary_expression "(*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8)" (binary_expression "(*(ushort *)&pRVar25[1].field_0x6 & 0xff) << 8" (parenthesized_expression "(*(ushort *)&pRVar25[1].field_0x6 & 0xff)" ( (binary_expression "*(ushort *)&pRVar25[1].field_0x6 & 0xff" (pointer_expression "*(ushort *)&pRVar25[1].field_0x6" * (cast_expression "(ushort *)&pRVar25[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25[1].field_0x6" & (field_expression "pRVar25[1].field_0x6" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)&pRVar25[1].field_0x6 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)&pRVar25[1].field_0x6 >> 8)" ( (binary_expression "*(ushort *)&pRVar25[1].field_0x6 >> 8" (pointer_expression "*(ushort *)&pRVar25[1].field_0x6" * (cast_expression "(ushort *)&pRVar25[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25[1].field_0x6" & (field_expression "pRVar25[1].field_0x6" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)))) >> number_literal) ))))) ;) (if_statement "if (uVar7 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }" if (parenthesized_expression "(uVar7 < 0xff00)" ( (binary_expression "uVar7 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;\n                    uVar19 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar35 = pcStack_160;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }" { (labeled_statement "LAB_000ea00c:\n                    if (uVar7 == 0) goto LAB_000e9e68;" statement_identifier : (if_statement "if (uVar7 == 0) goto LAB_000e9e68;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9e68;" goto statement_identifier ;))) (expression_statement "uVar19 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar19 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = pcStack_160;" (assignment_expression "pcVar35 = pcStack_160" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ea3a8;" if (parenthesized_expression "((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7)" ( (binary_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar7" (call_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" ( (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2" (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_" (cast_expression "(int)pOVar21->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea3a8;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000e9f08;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar21->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9f08;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar25[1].calculate_only_;" (assignment_expression "bVar1 = pRVar25[1].calculate_only_" identifier = (field_expression "pRVar25[1].calculate_only_" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)) ;) }) (else_clause "else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }" else (compound_statement "{\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;\n                  }" { (if_statement "if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }" if (parenthesized_expression "(uVar7 == 0xffff)" ( (binary_expression "uVar7 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar2 = *(int *)&pOVar21->entsize_;\n                      pRStack_150 = pRVar14;\n                      pRStack_14c = in_t1;\n                      pRStack_148 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);\n                      pRVar14 = pRStack_150;\n                      in_t1 = pRStack_14c;\n                      pRVar25 = pRStack_148;\n                      goto LAB_000ea00c;\n                    }" { (expression_statement "iVar2 = *(int *)&pOVar21->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar21->entsize_" identifier = (pointer_expression "*(int *)&pOVar21->entsize_" * (cast_expression "(int *)&pOVar21->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->entsize_" & (field_expression "pOVar21->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_150 = pRVar14;" (assignment_expression "pRStack_150 = pRVar14" identifier = identifier) ;) (expression_statement "pRStack_14c = in_t1;" (assignment_expression "pRStack_14c = in_t1" identifier = identifier) ;) (expression_statement "pRStack_148 = pRVar25;" (assignment_expression "pRStack_148 = pRVar25" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar2;\n                      }" { (expression_statement "iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);" (assignment_expression "iVar2 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21)" identifier = (call_expression "(*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21)" (parenthesized_expression "(*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar21->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar21->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar21->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar21)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar21->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar21->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar21->entsize_" * (cast_expression "(int *)&pOVar21->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->entsize_" & (field_expression "pOVar21->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150);" (assignment_expression "uVar7 = (**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x7790))(iVar2,pOVar21,pRStack_150)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7790)" * (pointer_expression "*(code **)(pcStack_160 + -0x7790)" * (cast_expression "(code **)(pcStack_160 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7790)" ( (binary_expression "pcStack_160 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar21,pRStack_150)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar14 = pRStack_150;" (assignment_expression "pRVar14 = pRStack_150" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_14c;" (assignment_expression "in_t1 = pRStack_14c" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_148;" (assignment_expression "pRVar25 = pRStack_148" identifier = identifier) ;) (goto_statement "goto LAB_000ea00c;" goto statement_identifier ;) })) (labeled_statement "LAB_000e9e68:\n                    bVar1 = pRVar25[1].calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar25[1].calculate_only_;" (assignment_expression "bVar1 = pRVar25[1].calculate_only_" identifier = (field_expression "pRVar25[1].calculate_only_" (subscript_expression "pRVar25[1]" identifier [ number_literal ]) . field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_160;" (assignment_expression "pcVar35 = pcStack_160" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }" { (expression_statement "p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18]" identifier = (subscript_expression "(pOVar21->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar21->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var33 == p_Var32) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(p_Var33 == p_Var32)" ( (binary_expression "p_Var33 == p_Var32" identifier == identifier) )) (compound_statement "{\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ea354;" if (parenthesized_expression "((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7)" ( (binary_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar7" (call_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" ( (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2" (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_" (cast_expression "(int)pOVar21->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea354;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar21->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar21->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (*p_Var33)(pOVar21,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (*p_Var33)(pOVar21,uVar7);" (assignment_expression "iVar2 = (*p_Var33)(pOVar21,uVar7)" identifier = (call_expression "(*p_Var33)(pOVar21,uVar7)" (parenthesized_expression "(*p_Var33)" ( (pointer_expression "*p_Var33" * identifier) )) (argument_list "(pOVar21,uVar7)" ( identifier , identifier )))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar7 & 0x7fffffff | 0x80000000" (binary_expression "uVar7 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_158 = CONCAT13(1,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(1,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_158._1_3_)" identifier (argument_list "(1,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)pRVar26)(pRVar24,puVar30);" (call_expression "(*(code *)pRVar26)(pRVar24,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar24,puVar30)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }" else (compound_statement "{\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar24,puVar30);\n                  }" { (expression_statement "in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);" (assignment_expression "in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill)" identifier = (cast_expression "(Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill)" ( (binary_expression "(int)&in_t1->calculated_value_ +\n                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill" (cast_expression "(int)&in_t1->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&in_t1->calculated_value_" & (field_expression "in_t1->calculated_value_" identifier -> field_identifier))) + (cast_expression "(int)&pOVar21->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar21->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar21->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar21->free_space_fill_" identifier -> field_identifier) -> field_identifier)))) )))) ;) (if_statement "if ((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14) goto LAB_000ea338;" if (parenthesized_expression "((Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14)" ( (binary_expression "(Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=\n                        pRVar14" (cast_expression "(Relocate *)\n                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)" ( (binary_expression "*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4" (binary_expression "*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_" (pointer_expression "*(int *)&pOVar21->field_0xec" * (cast_expression "(int *)&pOVar21->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->field_0xec" & (field_expression "pOVar21->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar21->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->free_space_fill_" identifier -> field_identifier))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea338;" goto statement_identifier ;)) (if_statement "if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }" if (parenthesized_expression "((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))" ( (binary_expression "(in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe)" (parenthesized_expression "(in_t1->calculated_value_ != 0)" ( (binary_expression "in_t1->calculated_value_ != 0" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) )) && (parenthesized_expression "(in_t1->calculated_value_ != 0xfffffffe)" ( (binary_expression "in_t1->calculated_value_ != 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) ))) )) (compound_statement "{\n                      uVar7 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);\n                    }" { (expression_statement "uVar7 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar7 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);" statement_identifier : (expression_statement "(**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0);" (call_expression "(**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7810)" * (pointer_expression "*(code **)(pcStack_160 + -0x7810)" * (cast_expression "(code **)(pcStack_160 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7810)" ( (binary_expression "pcStack_160 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar7 - 0x48c0)" ( (binary_expression "*(uint *)(pcStack_160 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcStack_160 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_160 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x7fc4)" ( (binary_expression "pcStack_160 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar7 - 0x48c0" identifier - number_literal) ))) ;)) })) (expression_statement "in_t1->calculated_value_ = 0xfffffffe;" (assignment_expression "in_t1->calculated_value_ = 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) = number_literal) ;) (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar24,puVar30);" (call_expression "(*(code *)pRVar26)(pRVar24,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar24,puVar30)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000e9df0;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);" (call_expression "(**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7810)" * (pointer_expression "*(code **)(pcStack_160 + -0x7810)" * (cast_expression "(code **)(pcStack_160 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7810)" ( (binary_expression "pcStack_160 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8)" ( (binary_expression "*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcStack_160 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_160 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x7fc4)" ( (binary_expression "pcStack_160 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcStack_160 + -0x77f0) - 0x48d8" (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000ea338:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x489c)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x489c" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "LAB_000ea354:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x33a0)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x33a0" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4860)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x3588" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x4860" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000ea38c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;" statement_identifier : (expression_statement "uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878;" (assignment_expression "uVar19 = *(uint *)(pcVar35 + -0x77f0) - 0x4878" identifier = (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x4878" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal)) ;)) (expression_statement "(**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19);" (call_expression "(**(code **)(pcVar35 + -0x7810))(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,uVar19)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000ea3a8:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);" statement_identifier : (expression_statement "pcVar31 = *(code **)(pcVar35 + -0x7810);" (assignment_expression "pcVar31 = *(code **)(pcVar35 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar38 = scan_relocatable_relocs;" (assignment_expression "pcVar38 = scan_relocatable_relocs" identifier = identifier) ;) (expression_statement "(*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);" (call_expression "(*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc)" (parenthesized_expression "(*pcVar31)" ( (pointer_expression "*pcVar31" * identifier) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar19 - 0x34dc" identifier - number_literal) ))) ;) (expression_statement "pRVar18 = pRStack_148;" (assignment_expression "pRVar18 = pRStack_148" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_14c;" (assignment_expression "pRVar25 = pRStack_14c" identifier = identifier) ;) (expression_statement "pRVar14 = pRStack_164;" (assignment_expression "pRVar14 = pRStack_164" identifier = identifier) ;) (expression_statement "pcVar35 = pcVar31 + 0x3dee80;" (assignment_expression "pcVar35 = pcVar31 + 0x3dee80" identifier = (binary_expression "pcVar31 + 0x3dee80" identifier + number_literal)) ;) (expression_statement "pRStack_194 = pRVar13;" (assignment_expression "pRStack_194 = pRVar13" identifier = identifier) ;) (expression_statement "uStack_1a0 = (uint)pRVar24;" (assignment_expression "uStack_1a0 = (uint)pRVar24" identifier = (cast_expression "(uint)pRVar24" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "puVar28 = (uint *)(uint)bStack_151;" (assignment_expression "puVar28 = (uint *)(uint)bStack_151" identifier = (cast_expression "(uint *)(uint)bStack_151" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)bStack_151" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "pOVar23 = pOVar22;" (assignment_expression "pOVar23 = pOVar22" identifier = identifier) ;) (expression_statement "pcVar37 = pcStack_160;" (assignment_expression "pcVar37 = pcStack_160" identifier = identifier) ;) (expression_statement "pcStack_1c8 = pcVar35;" (assignment_expression "pcStack_1c8 = pcVar35" identifier = identifier) ;) (expression_statement "pcStack_19c = pcVar34;" (assignment_expression "pcStack_19c = pcVar34" identifier = identifier) ;) (expression_statement "pRStack_198 = pRVar26;" (assignment_expression "pRStack_198 = pRVar26" identifier = identifier) ;) (expression_statement "pOStack_190 = pOVar21;" (assignment_expression "pOStack_190 = pOVar21" identifier = identifier) ;) (expression_statement "pRStack_18c = pRVar12;" (assignment_expression "pRStack_18c = pRVar12" identifier = identifier) ;) (expression_statement "uStack_188 = uVar5;" (assignment_expression "uStack_188 = uVar5" identifier = identifier) ;) (expression_statement "puStack_184 = puVar30;" (assignment_expression "puStack_184 = puVar30" identifier = identifier) ;) (expression_statement "p_Stack_180 = p_Var32;" (assignment_expression "p_Stack_180 = p_Var32" identifier = identifier) ;) (expression_statement "pcStack_17c = pcVar38;" (assignment_expression "pcStack_17c = pcVar38" identifier = identifier) ;) (if_statement "if (pRStack_164 == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }" if (parenthesized_expression "(pRStack_164 == (Relocate *)0x9)" ( (binary_expression "pRStack_164 == (Relocate *)0x9" identifier == (cast_expression "(Relocate *)0x9" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);\n                if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }\nLAB_000ea518:\n                return SUB41(pRVar12,0);\n              }" { (expression_statement "pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c);" (assignment_expression "pRVar12 = *(Relocate **)(pcVar31 + 0x3d768c)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d768c)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d768c)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d768c)" ( (binary_expression "pcVar31 + 0x3d768c" identifier + number_literal) ))))) ;) (if_statement "if (pRStack_15c != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }" if (parenthesized_expression "(pRStack_15c != (Relocate *)0x0)" ( (binary_expression "pRStack_15c != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);\n                  pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;\n                  puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);\n                }" { (expression_statement "pRVar26 = (Relocate *)0x0;" (assignment_expression "pRVar26 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764);" (assignment_expression "p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d7764)" identifier = (pointer_expression "*(_func_int_varargs **)(pcVar31 + 0x3d7764)" * (cast_expression "(_func_int_varargs **)(pcVar31 + 0x3d7764)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7764)" ( (binary_expression "pcVar31 + 0x3d7764" identifier + number_literal) ))))) ;) (expression_statement "pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_;" (assignment_expression "pRStack_1b8 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_" identifier = (cast_expression "(Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_" & (field_expression "(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c].calculate_only_" (subscript_expression "(*(Relocate **)(pcVar31 + 0x3d768c))[0x30c]" (parenthesized_expression "(*(Relocate **)(pcVar31 + 0x3d768c))" ( (pointer_expression "*(Relocate **)(pcVar31 + 0x3d768c)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d768c)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d768c)" ( (binary_expression "pcVar31 + 0x3d768c" identifier + number_literal) )))) )) [ number_literal ]) . field_identifier)))) ;) (expression_statement "puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c);" (assignment_expression "puVar30 = (uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c)" identifier = (cast_expression "(uint *)(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar31 + 0x3d6ebc) + 0x546c)" ( (binary_expression "*(int *)(pcVar31 + 0x3d6ebc) + 0x546c" (pointer_expression "*(int *)(pcVar31 + 0x3d6ebc)" * (cast_expression "(int *)(pcVar31 + 0x3d6ebc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x3d6ebc)" ( (binary_expression "pcVar31 + 0x3d6ebc" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  } while (pRStack_15c != pRVar26);" do (compound_statement "{\n                    if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 8;\n                    pRVar12 = pRStack_15c;\n                  }" { (if_statement "if (puVar28 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }" if (parenthesized_expression "(puVar28 == (uint *)0x0)" ( (binary_expression "puVar28 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                      if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }" { (labeled_statement "LAB_000ea73c:\n                      uVar5 = *(uint *)(pcVar37 + 4);" statement_identifier : (expression_statement "uVar5 = *(uint *)(pcVar37 + 4);" (assignment_expression "uVar5 = *(uint *)(pcVar37 + 4)" identifier = (pointer_expression "*(uint *)(pcVar37 + 4)" * (cast_expression "(uint *)(pcVar37 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 4)" ( (binary_expression "pcVar37 + 4" identifier + number_literal) ))))) ;)) (expression_statement "pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "pRVar13 = (Relocate *)((uint)pRVar12 >> 8);" (assignment_expression "pRVar13 = (Relocate *)((uint)pRVar12 >> 8)" identifier = (cast_expression "(Relocate *)((uint)pRVar12 >> 8)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pRVar12 >> 8)" ( (binary_expression "(uint)pRVar12 >> 8" (cast_expression "(uint)pRVar12" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pRVar13 < pRStack_150) {\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" if (parenthesized_expression "(pRVar13 < pRStack_150)" ( (binary_expression "pRVar13 < pRStack_150" identifier < identifier) )) (compound_statement "{\n                        in_t1 = (Relocate *)((int)pRVar13 * 0x10);\n                        pcVar35 = pcStack_1c8;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;\n                        pRVar24 = pRVar25 + (int)pRVar13 * 2;\n                        pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));\n                        if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        uVar5 = (uint)pRVar12 & 0xff;\n                        pcVar35 = pcStack_1c8;\n                        if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }\n                        pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_1c0);\n                        if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" { (expression_statement "in_t1 = (Relocate *)((int)pRVar13 * 0x10);" (assignment_expression "in_t1 = (Relocate *)((int)pRVar13 * 0x10)" identifier = (cast_expression "(Relocate *)((int)pRVar13 * 0x10)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar13 * 0x10)" ( (binary_expression "(int)pRVar13 * 0x10" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pcVar35 = pcStack_1c8;" (assignment_expression "pcVar35 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (pRVar25 == (Relocate *)0x0) goto LAB_000eaad4;" if (parenthesized_expression "(pRVar25 == (Relocate *)0x0)" ( (binary_expression "pRVar25 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eaad4;" goto statement_identifier ;)) (expression_statement "pRVar24 = pRVar25 + (int)pRVar13 * 2;" (assignment_expression "pRVar24 = pRVar25 + (int)pRVar13 * 2" identifier = (binary_expression "pRVar25 + (int)pRVar13 * 2" identifier + (binary_expression "(int)pRVar13 * 2" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8));" (assignment_expression "pRVar8 = (Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8))" identifier = (cast_expression "(Relocate *)\n                                 ((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8))" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8))" ( (binary_expression "(*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8 |\n                                 (uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8)" (binary_expression "(*(ushort *)&pRVar24[1].field_0x6 & 0xff) << 8" (parenthesized_expression "(*(ushort *)&pRVar24[1].field_0x6 & 0xff)" ( (binary_expression "*(ushort *)&pRVar24[1].field_0x6 & 0xff" (pointer_expression "*(ushort *)&pRVar24[1].field_0x6" * (cast_expression "(ushort *)&pRVar24[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar24[1].field_0x6" & (field_expression "pRVar24[1].field_0x6" (subscript_expression "pRVar24[1]" identifier [ number_literal ]) . field_identifier)))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)&pRVar24[1].field_0x6 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)&pRVar24[1].field_0x6 >> 8)" ( (binary_expression "*(ushort *)&pRVar24[1].field_0x6 >> 8" (pointer_expression "*(ushort *)&pRVar24[1].field_0x6" * (cast_expression "(ushort *)&pRVar24[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar24[1].field_0x6" & (field_expression "pRVar24[1].field_0x6" (subscript_expression "pRVar24[1]" identifier [ number_literal ]) . field_identifier)))) >> number_literal) )))) )))) ;) (if_statement "if (pRVar8 < (Relocate *)0xff00) {\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }\n                        else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }" if (parenthesized_expression "(pRVar8 < (Relocate *)0xff00)" ( (binary_expression "pRVar8 < (Relocate *)0xff00" identifier < (cast_expression "(Relocate *)0xff00" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;\n                          pcVar35 = pcStack_1c8;\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }" { (labeled_statement "LAB_000ea888:\n                          if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;" statement_identifier : (if_statement "if (pRVar8 == (Relocate *)0x0) goto LAB_000ea790;" if (parenthesized_expression "(pRVar8 == (Relocate *)0x0)" ( (binary_expression "pRVar8 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ea790;" goto statement_identifier ;))) (expression_statement "pcVar35 = pcStack_1c8;" (assignment_expression "pcVar35 = pcStack_1c8" identifier = identifier) ;) (if_statement "if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaab8;" if (parenthesized_expression "((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8)" ( (binary_expression "(Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8" (cast_expression "(Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaab8;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)\n                          goto LAB_000ea7b4;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "(int)pRVar8 * 4" (cast_expression "(int)pRVar8" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ea7b4;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar24[1].calculate_only_;" (assignment_expression "bVar1 = pRVar24[1].calculate_only_" identifier = (field_expression "pRVar24[1].calculate_only_" (subscript_expression "pRVar24[1]" identifier [ number_literal ]) . field_identifier)) ;) }) (else_clause "else {\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }" else (compound_statement "{\n                          if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;\n                        }" { (if_statement "if (pRVar8 == (Relocate *)0xffff) {\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }" if (parenthesized_expression "(pRVar8 == (Relocate *)0xffff)" ( (binary_expression "pRVar8 == (Relocate *)0xffff" identifier == (cast_expression "(Relocate *)0xffff" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            iVar2 = *(int *)&pOVar22->entsize_;\n                            pRStack_1b4 = pRVar12;\n                            pRStack_1b0 = pRVar13;\n                            pRStack_1ac = in_t1;\n                            pRStack_1a8 = pRVar24;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }\n                            uVar5 = (uint)pRStack_1b4;\n                            pRStack_1b4 = pRStack_1b0;\n                            pRVar12 = pRStack_1b0;\n                            pRStack_1b0 = (Relocate *)uVar5;\n                            pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                            pRVar12 = pRStack_1b0;\n                            pRVar13 = pRStack_1b4;\n                            in_t1 = pRStack_1ac;\n                            pRVar24 = pRStack_1a8;\n                            goto LAB_000ea888;\n                          }" { (expression_statement "iVar2 = *(int *)&pOVar22->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar22->entsize_" identifier = (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_1b4 = pRVar12;" (assignment_expression "pRStack_1b4 = pRVar12" identifier = identifier) ;) (expression_statement "pRStack_1b0 = pRVar13;" (assignment_expression "pRStack_1b0 = pRVar13" identifier = identifier) ;) (expression_statement "pRStack_1ac = in_t1;" (assignment_expression "pRStack_1ac = in_t1" identifier = identifier) ;) (expression_statement "pRStack_1a8 = pRVar24;" (assignment_expression "pRStack_1a8 = pRVar24" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);\n                              *(int *)&pOVar22->entsize_ = iVar2;\n                            }" { (expression_statement "iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0);" (assignment_expression "iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0)" identifier = (call_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar22,&uStack_1c0)" (parenthesized_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar22,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) )))) ;) (expression_statement "*(int *)&pOVar22->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar22->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar5 = (uint)pRStack_1b4;" (assignment_expression "uVar5 = (uint)pRStack_1b4" identifier = (cast_expression "(uint)pRStack_1b4" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pRStack_1b4 = pRStack_1b0;" (assignment_expression "pRStack_1b4 = pRStack_1b0" identifier = identifier) ;) (expression_statement "pRVar12 = pRStack_1b0;" (assignment_expression "pRVar12 = pRStack_1b0" identifier = identifier) ;) (expression_statement "pRStack_1b0 = (Relocate *)uVar5;" (assignment_expression "pRStack_1b0 = (Relocate *)uVar5" identifier = (cast_expression "(Relocate *)uVar5" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);" (assignment_expression "pRVar8 = (Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12)" identifier = (cast_expression "(Relocate *)\n                                     (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7790)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7790)" * (cast_expression "(code **)(pcStack_1c8 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7790)" ( (binary_expression "pcStack_1c8 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar22,pRVar12)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pRVar12 = pRStack_1b0;" (assignment_expression "pRVar12 = pRStack_1b0" identifier = identifier) ;) (expression_statement "pRVar13 = pRStack_1b4;" (assignment_expression "pRVar13 = pRStack_1b4" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_1ac;" (assignment_expression "in_t1 = pRStack_1ac" identifier = identifier) ;) (expression_statement "pRVar24 = pRStack_1a8;" (assignment_expression "pRVar24 = pRStack_1a8" identifier = identifier) ;) (goto_statement "goto LAB_000ea888;" goto statement_identifier ;) })) (labeled_statement "LAB_000ea790:\n                          bVar1 = pRVar24[1].calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar24[1].calculate_only_;" (assignment_expression "bVar1 = pRVar24[1].calculate_only_" identifier = (field_expression "pRVar24[1].calculate_only_" (subscript_expression "pRVar24[1]" identifier [ number_literal ]) . field_identifier)) ;)) }))) (expression_statement "uVar5 = (uint)pRVar12 & 0xff;" (assignment_expression "uVar5 = (uint)pRVar12 & 0xff" identifier = (binary_expression "(uint)pRVar12 & 0xff" (cast_expression "(uint)pRVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "pcVar35 = pcStack_1c8;" (assignment_expression "pcVar35 = pcStack_1c8" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) != 3) {\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }" if (parenthesized_expression "((bVar1 & 0xf) != 3)" ( (binary_expression "(bVar1 & 0xf) != 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                          if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;\n                          in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                          if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }" { (if_statement "if (pRVar13 == (Relocate *)0x0 && uVar5 == 0) goto LAB_000ea7b4;" if (parenthesized_expression "(pRVar13 == (Relocate *)0x0 && uVar5 == 0)" ( (binary_expression "pRVar13 == (Relocate *)0x0 && uVar5 == 0" (binary_expression "pRVar13 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (binary_expression "uVar5 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_000ea7b4;" goto statement_identifier ;)) (expression_statement "in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);" (assignment_expression "in_t1 = (Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill)" identifier = (cast_expression "(Relocate *)\n                                  ((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill)" ( (binary_expression "(int)&in_t1->calculated_value_ +\n                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill" (cast_expression "(int)&in_t1->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&in_t1->calculated_value_" & (field_expression "in_t1->calculated_value_" identifier -> field_identifier))) + (cast_expression "(int)&pOVar22->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar22->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar22->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier) -> field_identifier)))) )))) ;) (if_statement "if (pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)) {\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }" if (parenthesized_expression "(pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4))" ( (binary_expression "pRVar13 < (Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)" identifier < (cast_expression "(Relocate *)\n                                        (*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4)" ( (binary_expression "*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_ >> 4" (binary_expression "*(int *)&pOVar22->field_0xec -\n                                         (int)pOVar22->free_space_fill_" (pointer_expression "*(int *)&pOVar22->field_0xec" * (cast_expression "(int *)&pOVar22->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->field_0xec" & (field_expression "pOVar22->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar22->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier))) >> number_literal) )))) )) (compound_statement "{\n                            if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }\n                            in_t1->calculated_value_ = 0xfffffffe;\n                            goto LAB_000ea704;\n                          }" { (if_statement "if (in_t1->calculated_value_ != 0) {\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }" if (parenthesized_expression "(in_t1->calculated_value_ != 0)" ( (binary_expression "in_t1->calculated_value_ != 0" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n                              iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;\n                            }" { (expression_statement "iVar2 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_1c8 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = (Relocate *)0x9;" (assignment_expression "pRVar12 = (Relocate *)0x9" identifier = (cast_expression "(Relocate *)0x9" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (in_t1->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;" if (parenthesized_expression "(in_t1->calculated_value_ != 0xfffffffe)" ( (binary_expression "in_t1->calculated_value_ != 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) )) (goto_statement "goto LAB_000ea5b0;" goto statement_identifier ;)) })) (expression_statement "in_t1->calculated_value_ = 0xfffffffe;" (assignment_expression "in_t1->calculated_value_ = 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) = number_literal) ;) (goto_statement "goto LAB_000ea704;" goto statement_identifier ;) })) (goto_statement "goto LAB_000eaa64;" goto statement_identifier ;) })) (if_statement "if (uVar5 != 4) {\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }" if (parenthesized_expression "(uVar5 != 4)" ( (binary_expression "uVar5 != 4" identifier != number_literal) )) (compound_statement "{\n                          pRStack_1b4 = pRVar8;\n                          uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);\n                          pcVar35 = pcStack_1c8;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }" { (expression_statement "pRStack_1b4 = pRVar8;" (assignment_expression "pRStack_1b4 = pRVar8" identifier = identifier) ;) (expression_statement "uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22);" (assignment_expression "uVar5 = (*(code *)pRStack_1b8)(uVar5,pOVar22)" identifier = (call_expression "(*(code *)pRStack_1b8)(uVar5,pOVar22)" (parenthesized_expression "(*(code *)pRStack_1b8)" ( (pointer_expression "*(code *)pRStack_1b8" * (cast_expression "(code *)pRStack_1b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar5,pOVar22)" ( identifier , identifier )))) ;) (expression_statement "pcVar35 = pcStack_1c8;" (assignment_expression "pcVar35 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }" if (parenthesized_expression "(uVar5 < 9)" ( (binary_expression "uVar5 < 9" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();\n                            return (bool)uVar11;\n                          }" { comment comment (expression_statement "uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))();" (assignment_expression "uVar11 = (*(pcStack_1c8 + puVar30[uVar5]))()" identifier = (call_expression "(*(pcStack_1c8 + puVar30[uVar5]))()" (parenthesized_expression "(*(pcStack_1c8 + puVar30[uVar5]))" ( (pointer_expression "*(pcStack_1c8 + puVar30[uVar5])" * (parenthesized_expression "(pcStack_1c8 + puVar30[uVar5])" ( (binary_expression "pcStack_1c8 + puVar30[uVar5]" identifier + (subscript_expression "puVar30[uVar5]" identifier [ identifier ])) ))) )) (argument_list "()" ( )))) ;) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) (goto_statement "goto switchD_000ea8f8_caseD_3;" goto statement_identifier ;) })) (expression_statement "p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "p_Var33 = (pOVar22->super_Output_data)._vptr_Output_data[0x18]" identifier = (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }\n                        else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }" if (parenthesized_expression "(p_Var33 == p_Var32)" ( (binary_expression "p_Var33 == p_Var32" identifier == identifier) )) (compound_statement "{\n                          if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;\n                          iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);\n                          pRStack_1b4 = pRVar14;\n                        }" { (if_statement "if ((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8) goto LAB_000eaa9c;" if (parenthesized_expression "((Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8)" ( (binary_expression "(Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                              <= pRVar8" (cast_expression "(Relocate *)\n                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaa9c;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + (int)pRVar8 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "(int)pRVar8 * 4" (cast_expression "(int)pRVar8" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))))) ;) (expression_statement "pRStack_1b4 = pRVar14;" (assignment_expression "pRStack_1b4 = pRVar14" identifier = identifier) ;) }) (else_clause "else {\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }" else (compound_statement "{\n                          pRStack_1b4 = pRVar14;\n                          iVar2 = (*p_Var33)(pOVar22,pRVar8);\n                        }" { (expression_statement "pRStack_1b4 = pRVar14;" (assignment_expression "pRStack_1b4 = pRVar14" identifier = identifier) ;) (expression_statement "iVar2 = (*p_Var33)(pOVar22,pRVar8);" (assignment_expression "iVar2 = (*p_Var33)(pOVar22,pRVar8)" identifier = (call_expression "(*p_Var33)(pOVar22,pRVar8)" (parenthesized_expression "(*p_Var33)" ( (pointer_expression "*p_Var33" * identifier) )) (argument_list "(pOVar22,pRVar8)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar35 = *(code **)(pcStack_1c8 + -0x76e4);" (assignment_expression "pcVar35 = *(code **)(pcStack_1c8 + -0x76e4)" identifier = (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e4)" ( (binary_expression "pcStack_1c8 + -0x76e4" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13((char)pRStack_1b4,uStack_1c0._1_3_)" identifier (argument_list "((char)pRStack_1b4,uStack_1c0._1_3_)" ( (cast_expression "(char)pRStack_1b4" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar35)(pRVar18,&uStack_1c0);" (call_expression "(*pcVar35)(pRVar18,&uStack_1c0)" (parenthesized_expression "(*pcVar35)" ( (pointer_expression "*pcVar35" * identifier) )) (argument_list "(pRVar18,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) ))) ;) (if_statement "if (pRStack_1b4 == (Relocate *)&DAT_00000008) goto LAB_000ea724;" if (parenthesized_expression "(pRStack_1b4 == (Relocate *)&DAT_00000008)" ( (binary_expression "pRStack_1b4 == (Relocate *)&DAT_00000008" identifier == (cast_expression "(Relocate *)&DAT_00000008" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000ea724;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)&pRVar18[1].calculate_only_;" (assignment_expression "iVar2 = *(int *)&pRVar18[1].calculate_only_" identifier = (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier))))) ;) }) (else_clause "else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" else (compound_statement "{\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" { (labeled_statement "LAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;" statement_identifier : (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" identifier = (binary_expression "uStack_1c0 & 0xffffff" identifier & number_literal)) ;)) (expression_statement "(**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e4)" ( (binary_expression "pcStack_1c8 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pRVar18,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) ))) ;) (expression_statement "iVar2 = *(int *)&pRVar18[1].calculate_only_;" (assignment_expression "iVar2 = *(int *)&pRVar18[1].calculate_only_" identifier = (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier))))) ;) }))) (expression_statement "*(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;" (assignment_expression "*(int *)&pRVar18[1].calculate_only_ = iVar2 + 1" (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }" else (compound_statement "{\n                      uVar5 = *(uint *)pcVar37;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);\n                    }" { (expression_statement "uVar5 = *(uint *)pcVar37;" (assignment_expression "uVar5 = *(uint *)pcVar37" identifier = (pointer_expression "*(uint *)pcVar37" * (cast_expression "(uint *)pcVar37" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_1d0 = 0;" (assignment_expression "uStack_1d0 = 0" identifier = number_literal) ;) (expression_statement "iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);" (assignment_expression "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168)" identifier = (call_expression "(**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e0)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e0)" ( (binary_expression "pcStack_1c8 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_158,pOVar22,uStack_168)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000ea73c;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ea73c;" goto statement_identifier ;)) (labeled_statement "LAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);" statement_identifier : (expression_statement "uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_1c0._1_3_)" identifier (argument_list "(8,uStack_1c0._1_3_)" ( number_literal , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x76e4))(pRVar18,&uStack_1c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e4)" ( (binary_expression "pcStack_1c8 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pRVar18,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) ))) ;) }))) (labeled_statement "LAB_000ea724:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);" statement_identifier : (expression_statement "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);" (assignment_expression "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar26->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar26->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar26->calculated_value_ + 1" (cast_expression "(int)&pRVar26->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar26->calculated_value_" & (field_expression "pRVar26->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "pcVar37 = pcVar37 + 8;" (assignment_expression "pcVar37 = pcVar37 + 8" identifier = (binary_expression "pcVar37 + 8" identifier + number_literal)) ;) (expression_statement "pRVar12 = pRStack_15c;" (assignment_expression "pRVar12 = pRStack_15c" identifier = identifier) ;) }) while (parenthesized_expression "(pRStack_15c != pRVar26)" ( (binary_expression "pRStack_15c != pRVar26" identifier != identifier) )) ;) })) (labeled_statement "LAB_000ea518:\n                return SUB41(pRVar12,0);" statement_identifier : (return_statement "return SUB41(pRVar12,0);" return (call_expression "SUB41(pRVar12,0)" identifier (argument_list "(pRVar12,0)" ( identifier , number_literal ))) ;)) })) (if_statement "if (pRStack_164 == (Relocate *)&DAT_00000004) {\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }" if (parenthesized_expression "(pRStack_164 == (Relocate *)&DAT_00000004)" ( (binary_expression "pRStack_164 == (Relocate *)&DAT_00000004" identifier == (cast_expression "(Relocate *)&DAT_00000004" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);\n                pRVar12 = pRStack_1b8;\n                if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;\n                pRVar14 = (Relocate *)0x0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);\n                p_Var32 = (_func_int_varargs *)&DAT_00000008;\n                puVar30 = &uStack_1c0;\nLAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\nLAB_000ea480:\n                pcVar35 = pcStack_1c8;\n                uVar5 = *(uint *)(pcVar37 + 4);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                pRVar13 = (Relocate *)((uint)pRVar12 >> 8);\n                if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }\n                pRVar24 = (Relocate *)((int)pRVar13 * 0x10);\n                if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);\n              }" { (expression_statement "pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764);" (assignment_expression "pRStack_1b8 = *(Relocate **)(pcVar31 + 0x3d7764)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d7764)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d7764)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7764)" ( (binary_expression "pcVar31 + 0x3d7764" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = pRStack_1b8;" (assignment_expression "pRVar12 = pRStack_1b8" identifier = identifier) ;) (if_statement "if (pRStack_15c == (Relocate *)0x0) goto LAB_000ea518;" if (parenthesized_expression "(pRStack_15c == (Relocate *)0x0)" ( (binary_expression "pRStack_15c == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ea518;" goto statement_identifier ;)) (expression_statement "pRVar14 = (Relocate *)0x0;" (assignment_expression "pRVar14 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c);" (assignment_expression "pRVar26 = *(Relocate **)(pcVar31 + 0x3d779c)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d779c)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d779c)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d779c)" ( (binary_expression "pcVar31 + 0x3d779c" identifier + number_literal) ))))) ;) (expression_statement "p_Var32 = (_func_int_varargs *)&DAT_00000008;" (assignment_expression "p_Var32 = (_func_int_varargs *)&DAT_00000008" identifier = (cast_expression "(_func_int_varargs *)&DAT_00000008" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) ;) (expression_statement "puVar30 = &uStack_1c0;" (assignment_expression "puVar30 = &uStack_1c0" identifier = (pointer_expression "&uStack_1c0" & identifier)) ;) (labeled_statement "LAB_000ea478:\n                if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }" statement_identifier : (if_statement "if (puVar28 != (uint *)0x0) {\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }" if (parenthesized_expression "(puVar28 != (uint *)0x0)" ( (binary_expression "puVar28 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  uVar5 = *(uint *)pcVar37;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);\n                  if (iVar2 != 0) goto LAB_000ea480;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);\n                  (*(code *)pRVar26)(pRVar18,puVar30);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }" { (expression_statement "uVar5 = *(uint *)pcVar37;" (assignment_expression "uVar5 = *(uint *)pcVar37" identifier = (pointer_expression "*(uint *)pcVar37" * (cast_expression "(uint *)pcVar37" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_1d0 = 0;" (assignment_expression "uStack_1d0 = 0" identifier = number_literal) ;) (expression_statement "iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_1cc = (((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168);" (assignment_expression "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168)" identifier = (call_expression "(**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,pOVar22,uStack_168)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e0)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e0)" ( (binary_expression "pcStack_1c8 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_158,pOVar22,uStack_168)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000ea480;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ea480;" goto statement_identifier ;)) (labeled_statement "LAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);" statement_identifier : (expression_statement "uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13((char)p_Var32,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13((char)p_Var32,uStack_1c0._1_3_)" identifier (argument_list "((char)p_Var32,uStack_1c0._1_3_)" ( (cast_expression "(char)p_Var32" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)pRVar26)(pRVar18,puVar30);" (call_expression "(*(code *)pRVar26)(pRVar18,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar18,puVar30)" ( identifier , identifier ))) ;) (expression_statement "pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);" (assignment_expression "pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar14->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar14->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar14->calculated_value_ + 1" (cast_expression "(int)&pRVar14->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar14->calculated_value_" & (field_expression "pRVar14->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar37 = pcVar37 + 0xc;" (assignment_expression "pcVar37 = pcVar37 + 0xc" identifier = (binary_expression "pcVar37 + 0xc" identifier + number_literal)) ;) (expression_statement "pRVar12 = pRStack_15c;" (assignment_expression "pRVar12 = pRStack_15c" identifier = identifier) ;) (if_statement "if (pRStack_15c == pRVar14) goto LAB_000ea518;" if (parenthesized_expression "(pRStack_15c == pRVar14)" ( (binary_expression "pRStack_15c == pRVar14" identifier == identifier) )) (goto_statement "goto LAB_000ea518;" goto statement_identifier ;)) (goto_statement "goto LAB_000ea478;" goto statement_identifier ;) }))) (labeled_statement "LAB_000ea480:\n                pcVar35 = pcStack_1c8;" statement_identifier : (expression_statement "pcVar35 = pcStack_1c8;" (assignment_expression "pcVar35 = pcStack_1c8" identifier = identifier) ;)) (expression_statement "uVar5 = *(uint *)(pcVar37 + 4);" (assignment_expression "uVar5 = *(uint *)(pcVar37 + 4)" identifier = (pointer_expression "*(uint *)(pcVar37 + 4)" * (cast_expression "(uint *)(pcVar37 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 4)" ( (binary_expression "pcVar37 + 4" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "pRVar13 = (Relocate *)((uint)pRVar12 >> 8);" (assignment_expression "pRVar13 = (Relocate *)((uint)pRVar12 >> 8)" identifier = (cast_expression "(Relocate *)((uint)pRVar12 >> 8)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pRVar12 >> 8)" ( (binary_expression "(uint)pRVar12 >> 8" (cast_expression "(uint)pRVar12" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pRStack_150 <= pRVar13) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }" if (parenthesized_expression "(pRStack_150 <= pRVar13)" ( (binary_expression "pRStack_150 <= pRVar13" identifier <= identifier) )) (compound_statement "{\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,puVar30);\nLAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0xc;\n                  pRVar12 = pRStack_15c;\n                  if (pRStack_15c == pRVar14) goto LAB_000ea518;\n                  goto LAB_000ea478;\n                }" { (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" identifier = (binary_expression "uStack_1c0 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar18,puVar30);" (call_expression "(*(code *)pRVar26)(pRVar18,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar18,puVar30)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000ea45c:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);" statement_identifier : (expression_statement "pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);" (assignment_expression "pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar14->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar14->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar14->calculated_value_ + 1" (cast_expression "(int)&pRVar14->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar14->calculated_value_" & (field_expression "pRVar14->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "*(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;" (assignment_expression "*(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "*(int *)&pRVar18[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)))) + number_literal)) ;) (expression_statement "pcVar37 = pcVar37 + 0xc;" (assignment_expression "pcVar37 = pcVar37 + 0xc" identifier = (binary_expression "pcVar37 + 0xc" identifier + number_literal)) ;) (expression_statement "pRVar12 = pRStack_15c;" (assignment_expression "pRVar12 = pRStack_15c" identifier = identifier) ;) (if_statement "if (pRStack_15c == pRVar14) goto LAB_000ea518;" if (parenthesized_expression "(pRStack_15c == pRVar14)" ( (binary_expression "pRStack_15c == pRVar14" identifier == identifier) )) (goto_statement "goto LAB_000ea518;" goto statement_identifier ;)) (goto_statement "goto LAB_000ea478;" goto statement_identifier ;) })) (expression_statement "pRVar24 = (Relocate *)((int)pRVar13 * 0x10);" (assignment_expression "pRVar24 = (Relocate *)((int)pRVar13 * 0x10)" identifier = (cast_expression "(Relocate *)((int)pRVar13 * 0x10)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar13 * 0x10)" ( (binary_expression "(int)pRVar13 * 0x10" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (pRVar25 != (Relocate *)0x0) {\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }" if (parenthesized_expression "(pRVar25 != (Relocate *)0x0)" ( (binary_expression "pRVar25 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pRVar8 = pRVar25 + (int)pRVar13 * 2;\n                  uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  pcVar35 = pcStack_1c8;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  goto LAB_000ea45c;\n                }" { (expression_statement "pRVar8 = pRVar25 + (int)pRVar13 * 2;" (assignment_expression "pRVar8 = pRVar25 + (int)pRVar13 * 2" identifier = (binary_expression "pRVar25 + (int)pRVar13 * 2" identifier + (binary_expression "(int)pRVar13 * 2" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8);" (assignment_expression "uVar5 = (*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8)" identifier = (binary_expression "(*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8)" (binary_expression "(*(ushort *)&pRVar8[1].field_0x6 & 0xff) << 8" (parenthesized_expression "(*(ushort *)&pRVar8[1].field_0x6 & 0xff)" ( (binary_expression "*(ushort *)&pRVar8[1].field_0x6 & 0xff" (pointer_expression "*(ushort *)&pRVar8[1].field_0x6" * (cast_expression "(ushort *)&pRVar8[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar8[1].field_0x6" & (field_expression "pRVar8[1].field_0x6" (subscript_expression "pRVar8[1]" identifier [ number_literal ]) . field_identifier)))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)&pRVar8[1].field_0x6 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)&pRVar8[1].field_0x6 >> 8)" ( (binary_expression "*(ushort *)&pRVar8[1].field_0x6 >> 8" (pointer_expression "*(ushort *)&pRVar8[1].field_0x6" * (cast_expression "(ushort *)&pRVar8[1].field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar8[1].field_0x6" & (field_expression "pRVar8[1].field_0x6" (subscript_expression "pRVar8[1]" identifier [ number_literal ]) . field_identifier)))) >> number_literal) ))))) ;) (if_statement "if (uVar5 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }" if (parenthesized_expression "(uVar5 < 0xff00)" ( (binary_expression "uVar5 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;\n                    iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar35 = pcStack_1c8;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }" { (labeled_statement "LAB_000ea62c:\n                    if (uVar5 == 0) goto LAB_000ea4d4;" statement_identifier : (if_statement "if (uVar5 == 0) goto LAB_000ea4d4;" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000ea4d4;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_1c8 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = pcStack_1c8;" (assignment_expression "pcVar35 = pcStack_1c8" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eaabc;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar5" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaabc;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ea4f4;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar5 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar5 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar5 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ea4f4;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar8[1].calculate_only_;" (assignment_expression "bVar1 = pRVar8[1].calculate_only_" identifier = (field_expression "pRVar8[1].calculate_only_" (subscript_expression "pRVar8[1]" identifier [ number_literal ]) . field_identifier)) ;) }) (else_clause "else {\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }" else (compound_statement "{\n                    if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;\n                  }" { (if_statement "if (uVar5 == 0xffff) {\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }" if (parenthesized_expression "(uVar5 == 0xffff)" ( (binary_expression "uVar5 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar2 = *(int *)&pOVar22->entsize_;\n                      pRStack_1b4 = pRVar12;\n                      pRStack_1b0 = pRVar13;\n                      pRStack_1ac = pRVar24;\n                      pRStack_1a8 = pRVar8;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }\n                      uVar5 = (uint)pRStack_1b4;\n                      pRStack_1b4 = pRStack_1b0;\n                      pRVar12 = pRStack_1b0;\n                      pRStack_1b0 = (Relocate *)uVar5;\n                      uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);\n                      pRVar12 = pRStack_1b0;\n                      pRVar13 = pRStack_1b4;\n                      pRVar24 = pRStack_1ac;\n                      pRVar8 = pRStack_1a8;\n                      goto LAB_000ea62c;\n                    }" { (expression_statement "iVar2 = *(int *)&pOVar22->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar22->entsize_" identifier = (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_1b4 = pRVar12;" (assignment_expression "pRStack_1b4 = pRVar12" identifier = identifier) ;) (expression_statement "pRStack_1b0 = pRVar13;" (assignment_expression "pRStack_1b0 = pRVar13" identifier = identifier) ;) (expression_statement "pRStack_1ac = pRVar24;" (assignment_expression "pRStack_1ac = pRVar24" identifier = identifier) ;) (expression_statement "pRStack_1a8 = pRVar8;" (assignment_expression "pRStack_1a8 = pRVar8" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar2;\n                      }" { (expression_statement "iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);" (assignment_expression "iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22)" identifier = (call_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22)" (parenthesized_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar22)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar22->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar22->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar5 = (uint)pRStack_1b4;" (assignment_expression "uVar5 = (uint)pRStack_1b4" identifier = (cast_expression "(uint)pRStack_1b4" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pRStack_1b4 = pRStack_1b0;" (assignment_expression "pRStack_1b4 = pRStack_1b0" identifier = identifier) ;) (expression_statement "pRVar12 = pRStack_1b0;" (assignment_expression "pRVar12 = pRStack_1b0" identifier = identifier) ;) (expression_statement "pRStack_1b0 = (Relocate *)uVar5;" (assignment_expression "pRStack_1b0 = (Relocate *)uVar5" identifier = (cast_expression "(Relocate *)uVar5" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12);" (assignment_expression "uVar5 = (**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12)" identifier = (call_expression "(**(code **)(pcStack_1c8 + -0x7790))(iVar2,pOVar22,pRVar12)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7790)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7790)" * (cast_expression "(code **)(pcStack_1c8 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7790)" ( (binary_expression "pcStack_1c8 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar22,pRVar12)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar12 = pRStack_1b0;" (assignment_expression "pRVar12 = pRStack_1b0" identifier = identifier) ;) (expression_statement "pRVar13 = pRStack_1b4;" (assignment_expression "pRVar13 = pRStack_1b4" identifier = identifier) ;) (expression_statement "pRVar24 = pRStack_1ac;" (assignment_expression "pRVar24 = pRStack_1ac" identifier = identifier) ;) (expression_statement "pRVar8 = pRStack_1a8;" (assignment_expression "pRVar8 = pRStack_1a8" identifier = identifier) ;) (goto_statement "goto LAB_000ea62c;" goto statement_identifier ;) })) (labeled_statement "LAB_000ea4d4:\n                    bVar1 = pRVar8[1].calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar8[1].calculate_only_;" (assignment_expression "bVar1 = pRVar8[1].calculate_only_" identifier = (field_expression "pRVar8[1].calculate_only_" (subscript_expression "pRVar8[1]" identifier [ number_literal ]) . field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_1c8;" (assignment_expression "pcVar35 = pcStack_1c8" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }\n                  else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }" { (expression_statement "pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "pRVar12 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]" identifier = (cast_expression "(Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ]))) ;) (if_statement "if (pRVar12 == pRStack_1b8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(pRVar12 == pRStack_1b8)" ( (binary_expression "pRVar12 == pRStack_1b8" identifier == identifier) )) (compound_statement "{\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eaa9c;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar5" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaa9c;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar5 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar5 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar5 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar5 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar5 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (*(code *)pRVar12)(pOVar22,uVar5);" (assignment_expression "iVar2 = (*(code *)pRVar12)(pOVar22,uVar5)" identifier = (call_expression "(*(code *)pRVar12)(pOVar22,uVar5)" (parenthesized_expression "(*(code *)pRVar12)" ( (pointer_expression "*(code *)pRVar12" * (cast_expression "(code *)pRVar12" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pOVar22,uVar5)" ( identifier , identifier )))) ;) (expression_statement "uVar5 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar5 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar5 & 0x7fffffff | 0x80000000" (binary_expression "uVar5 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_1c0._1_3_)" identifier (argument_list "(1,uStack_1c0._1_3_)" ( number_literal , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)pRVar26)(pRVar18,puVar30);" (call_expression "(*(code *)pRVar26)(pRVar18,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar18,puVar30)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }" else (compound_statement "{\n                    if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;\n                    pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;\n                    if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }\n                    pRVar24->calculated_value_ = 0xfffffffe;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,puVar30);\n                  }" { (if_statement "if (((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)\n                    goto LAB_000ea4f4;" if (parenthesized_expression "(((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0)" ( (binary_expression "((uint)pRVar12 & 0xff) == 0 && pRVar13 == (Relocate *)0x0" (binary_expression "((uint)pRVar12 & 0xff) == 0" (parenthesized_expression "((uint)pRVar12 & 0xff)" ( (binary_expression "(uint)pRVar12 & 0xff" (cast_expression "(uint)pRVar12" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) && (binary_expression "pRVar13 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_000ea4f4;" goto statement_identifier ;)) (expression_statement "pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);" (assignment_expression "pRVar24 = (Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill)" identifier = (cast_expression "(Relocate *)\n                              ((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill)" ( (binary_expression "(int)&pRVar24->calculated_value_ +\n                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill" (cast_expression "(int)&pRVar24->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar24->calculated_value_" & (field_expression "pRVar24->calculated_value_" identifier -> field_identifier))) + (cast_expression "(int)&pOVar22->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar22->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar22->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier) -> field_identifier)))) )))) ;) (if_statement "if ((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13) goto LAB_000eaa64;" if (parenthesized_expression "((Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13)" ( (binary_expression "(Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=\n                        pRVar13" (cast_expression "(Relocate *)\n                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4)" ( (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4" (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_" (pointer_expression "*(int *)&pOVar22->field_0xec" * (cast_expression "(int *)&pOVar22->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->field_0xec" & (field_expression "pOVar22->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar22->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaa64;" goto statement_identifier ;)) (if_statement "if ((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)) {\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }" if (parenthesized_expression "((pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe))" ( (binary_expression "(pRVar24->calculated_value_ != 0) &&\n                       (pRVar24->calculated_value_ != 0xfffffffe)" (parenthesized_expression "(pRVar24->calculated_value_ != 0)" ( (binary_expression "pRVar24->calculated_value_ != 0" (field_expression "pRVar24->calculated_value_" identifier -> field_identifier) != number_literal) )) && (parenthesized_expression "(pRVar24->calculated_value_ != 0xfffffffe)" ( (binary_expression "pRVar24->calculated_value_ != 0xfffffffe" (field_expression "pRVar24->calculated_value_" identifier -> field_identifier) != number_literal) ))) )) (compound_statement "{\n                      iVar2 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pRVar12 = pRVar14;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);\n                      pRVar14 = pRVar12;\n                    }" { (expression_statement "iVar2 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_1c8 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = pRVar14;" (assignment_expression "pRVar12 = pRVar14" identifier = identifier) ;) (labeled_statement "LAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);" statement_identifier : (expression_statement "(**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7810)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7810)" * (cast_expression "(code **)(pcStack_1c8 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7810)" ( (binary_expression "pcStack_1c8 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar2 + -0x48c0)" ( (binary_expression "*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_1c8 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1c8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x7fc4)" ( (binary_expression "pcStack_1c8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x48c0" identifier + number_literal) ))) ;)) (expression_statement "pRVar14 = pRVar12;" (assignment_expression "pRVar14 = pRVar12" identifier = identifier) ;) })) (expression_statement "pRVar24->calculated_value_ = 0xfffffffe;" (assignment_expression "pRVar24->calculated_value_ = 0xfffffffe" (field_expression "pRVar24->calculated_value_" identifier -> field_identifier) = number_literal) ;) (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" identifier = (binary_expression "uStack_1c0 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar18,puVar30);" (call_expression "(*(code *)pRVar26)(pRVar18,puVar30)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar18,puVar30)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000ea45c;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);" (call_expression "(**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7810)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7810)" * (cast_expression "(code **)(pcStack_1c8 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7810)" ( (binary_expression "pcStack_1c8 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938)" ( (binary_expression "*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_1c8 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1c8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x7fc4)" ( (binary_expression "pcStack_1c8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_1c8 + -0x77f0) + -0x4938" (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eaa64:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x489c)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x489c" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar35 + -0x77f0) + -0x48f0)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x48f0" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eaa9c:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar35 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000eaab8:\n              iVar2 = *(int *)(pcVar35 + -0x77f0);" statement_identifier : (expression_statement "iVar2 = *(int *)(pcVar35 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcVar35 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000eaabc:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x34dc" identifier + number_literal) ))) ;)) (labeled_statement "LAB_000eaad4:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4908)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x4908" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "switchD_000ea8f8_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);" statement_identifier : (expression_statement "pcVar31 = *(code **)(pcVar35 + -0x7810);" (assignment_expression "pcVar31 = *(code **)(pcVar35 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar38 = Target_mips<64,_true>::emit_relocs_scan;" (comma_expression "pcVar38 = Target_mips<64,_true>::emit_relocs_scan" (assignment_expression "pcVar38 = Target_mips<64" identifier = (binary_expression "Target_mips<64" identifier < number_literal)) , (binary_expression "_true>::emit_relocs_scan" identifier > (ERROR "::" : :) identifier)) ;) (expression_statement "(*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920);" (call_expression "(*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920)" (parenthesized_expression "(*pcVar31)" ( (pointer_expression "*pcVar31" * identifier) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar35 + -0x77f0) + -0x4920)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x4920" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pRVar13 = pRStack_1b0;" (assignment_expression "pRVar13 = pRStack_1b0" identifier = identifier) ;) (expression_statement "pRVar12 = pRStack_1b4;" (assignment_expression "pRVar12 = pRStack_1b4" identifier = identifier) ;) (expression_statement "pcVar35 = pcVar31 + 0x3de734;" (assignment_expression "pcVar35 = pcVar31 + 0x3de734" identifier = (binary_expression "pcVar31 + 0x3de734" identifier + number_literal)) ;) (expression_statement "pRStack_1fc = pRVar25;" (assignment_expression "pRStack_1fc = pRVar25" identifier = identifier) ;) (expression_statement "pRStack_208 = pRVar18;" (assignment_expression "pRStack_208 = pRVar18" identifier = identifier) ;) (expression_statement "uVar5 = (uint)bStack_1b9;" (assignment_expression "uVar5 = (uint)bStack_1b9" identifier = (cast_expression "(uint)bStack_1b9" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pOVar21 = pOVar23;" (assignment_expression "pOVar21 = pOVar23" identifier = identifier) ;) (expression_statement "pcVar34 = pcStack_1c8;" (assignment_expression "pcVar34 = pcStack_1c8" identifier = identifier) ;) (expression_statement "pcStack_228 = pcVar35;" (assignment_expression "pcStack_228 = pcVar35" identifier = identifier) ;) (expression_statement "pcStack_204 = pcVar37;" (assignment_expression "pcStack_204 = pcVar37" identifier = identifier) ;) (expression_statement "pRStack_200 = pRVar26;" (assignment_expression "pRStack_200 = pRVar26" identifier = identifier) ;) (expression_statement "pOStack_1f8 = pOVar22;" (assignment_expression "pOStack_1f8 = pOVar22" identifier = identifier) ;) (expression_statement "pRStack_1f4 = pRVar14;" (assignment_expression "pRStack_1f4 = pRVar14" identifier = identifier) ;) (expression_statement "puStack_1f0 = puVar28;" (assignment_expression "puStack_1f0 = puVar28" identifier = identifier) ;) (expression_statement "puStack_1ec = puVar30;" (assignment_expression "puStack_1ec = puVar30" identifier = identifier) ;) (expression_statement "p_Stack_1e8 = p_Var32;" (assignment_expression "p_Stack_1e8 = p_Var32" identifier = identifier) ;) (expression_statement "pcStack_1e4 = pcVar38;" (assignment_expression "pcStack_1e4 = pcVar38" identifier = identifier) ;) (if_statement "if (iStack_1cc == 9) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }" if (parenthesized_expression "(iStack_1cc == 9)" ( (binary_expression "iStack_1cc == 9" identifier == number_literal) )) (compound_statement "{\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }\nLAB_000eace0:\n                return SUB41(pRVar24,0);\n              }" { (expression_statement "pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);" (assignment_expression "pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d7018)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d7018)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7018)" ( (binary_expression "pcVar31 + 0x3d7018" identifier + number_literal) ))))) ;) (expression_statement "pRVar24 = pRStack_218;" (assignment_expression "pRVar24 = pRStack_218" identifier = identifier) ;) (if_statement "if (pRStack_1c4 != (Relocate *)0x0) {\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }" if (parenthesized_expression "(pRStack_1c4 != (Relocate *)0x0)" ( (binary_expression "pRStack_1c4 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_220;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);\n                }" { (expression_statement "pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050);" (assignment_expression "pRVar14 = *(Relocate **)(pcVar31 + 0x3d7050)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d7050)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d7050)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7050)" ( (binary_expression "pcVar31 + 0x3d7050" identifier + number_literal) ))))) ;) (expression_statement "pRVar26 = (Relocate *)0x0;" (assignment_expression "pRVar26 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar28 = &uStack_220;" (assignment_expression "puVar28 = &uStack_220" identifier = (pointer_expression "&uStack_220" & identifier)) ;) (expression_statement "p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;" (assignment_expression "p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab" identifier = (cast_expression "(_func_int_varargs *)&DAT_aaaaaaab" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_aaaaaaab" & identifier))) ;) (do_statement "do {\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  } while (pRStack_1c4 != pRVar26);" do (compound_statement "{\n                    if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar24 = pRStack_1c4;\n                  }" { (if_statement "if (uVar5 == 0) {\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }\n                    else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);\n                      if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }\n                      *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                    }" { (labeled_statement "LAB_000eae6c:\n                      in_t1 = *(Relocate **)(pcVar34 + 8);" statement_identifier : (expression_statement "in_t1 = *(Relocate **)(pcVar34 + 8);" (assignment_expression "in_t1 = *(Relocate **)(pcVar34 + 8)" identifier = (pointer_expression "*(Relocate **)(pcVar34 + 8)" * (cast_expression "(Relocate **)(pcVar34 + 8)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar34 + 8)" ( (binary_expression "pcVar34 + 8" identifier + number_literal) ))))) ;)) (if_statement "if (in_t1 < pRStack_1b8) {\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }" if (parenthesized_expression "(in_t1 < pRStack_1b8)" ( (binary_expression "in_t1 < pRStack_1b8" identifier < identifier) )) (compound_statement "{\n                        pcVar35 = pcStack_228;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;\n                        pRVar24 = (Relocate *)((int)in_t1 * 0x18);\n                        pRVar25 = pRVar12 + (int)in_t1 * 3;\n                        uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                        if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_228;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                      }" { (expression_statement "pcVar35 = pcStack_228;" (assignment_expression "pcVar35 = pcStack_228" identifier = identifier) ;) (if_statement "if (pRVar12 == (Relocate *)0x0) goto LAB_000eb138;" if (parenthesized_expression "(pRVar12 == (Relocate *)0x0)" ( (binary_expression "pRVar12 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eb138;" goto statement_identifier ;)) (expression_statement "pRVar24 = (Relocate *)((int)in_t1 * 0x18);" (assignment_expression "pRVar24 = (Relocate *)((int)in_t1 * 0x18)" identifier = (cast_expression "(Relocate *)((int)in_t1 * 0x18)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)in_t1 * 0x18)" ( (binary_expression "(int)in_t1 * 0x18" (cast_expression "(int)in_t1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pRVar25 = pRVar12 + (int)in_t1 * 3;" (assignment_expression "pRVar25 = pRVar12 + (int)in_t1 * 3" identifier = (binary_expression "pRVar12 + (int)in_t1 * 3" identifier + (binary_expression "(int)in_t1 * 3" (cast_expression "(int)in_t1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;" (assignment_expression "uVar7 = (uint)*(ushort *)&pRVar25->field_0x6" identifier = (binary_expression "(uint)*(ushort *)&pRVar25->field_0x6" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)&pRVar25->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25->field_0x6" & (field_expression "pRVar25->field_0x6" identifier -> field_identifier))))) ;) (if_statement "if (uVar7 < 0xff00) {\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }" if (parenthesized_expression "(uVar7 < 0xff00)" ( (binary_expression "uVar7 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;\n                          iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar35 = pcStack_228;\n                          if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;\n                          bVar1 = pRVar25->calculate_only_;\n                        }" { (labeled_statement "LAB_000eafac:\n                          if (uVar7 == 0) goto LAB_000eaeb0;" statement_identifier : (if_statement "if (uVar7 == 0) goto LAB_000eaeb0;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eaeb0;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = pcStack_228;" (assignment_expression "pcVar35 = pcStack_228" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7) goto LAB_000eb154;" if (parenthesized_expression "((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7)" ( (binary_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2) <= uVar7" (call_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                    >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb154;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000eaf54;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eaf54;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar25->calculate_only_;" (assignment_expression "bVar1 = pRVar25->calculate_only_" identifier = (field_expression "pRVar25->calculate_only_" identifier -> field_identifier)) ;) }) (else_clause "else {\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }" else (compound_statement "{\n                          if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;\n                        }" { (if_statement "if (uVar7 == 0xffff) {\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }" if (parenthesized_expression "(uVar7 == 0xffff)" ( (binary_expression "uVar7 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                            iVar2 = *(int *)&pOVar23->entsize_;\n                            pRStack_20c = pRVar24;\n                            pRStack_214 = in_t1;\n                            pRStack_210 = pRVar25;\n                            if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }\n                            uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                            pRVar24 = pRStack_20c;\n                            in_t1 = pRStack_214;\n                            pRVar25 = pRStack_210;\n                            goto LAB_000eafac;\n                          }" { (expression_statement "iVar2 = *(int *)&pOVar23->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar23->entsize_" identifier = (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_20c = pRVar24;" (assignment_expression "pRStack_20c = pRVar24" identifier = identifier) ;) (expression_statement "pRStack_214 = in_t1;" (assignment_expression "pRStack_214 = in_t1" identifier = identifier) ;) (expression_statement "pRStack_210 = pRVar25;" (assignment_expression "pRStack_210 = pRVar25" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);\n                              *(int *)&pOVar23->entsize_ = iVar2;\n                            }" { (expression_statement "iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23);" (assignment_expression "iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23)" identifier = (call_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                (pOVar23)" (parenthesized_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar23)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar23->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar23->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);" (assignment_expression "uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7790)" * (pointer_expression "*(code **)(pcStack_228 + -0x7790)" * (cast_expression "(code **)(pcStack_228 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7790)" ( (binary_expression "pcStack_228 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar23,pRStack_214)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar24 = pRStack_20c;" (assignment_expression "pRVar24 = pRStack_20c" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_214;" (assignment_expression "in_t1 = pRStack_214" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_210;" (assignment_expression "pRVar25 = pRStack_210" identifier = identifier) ;) (goto_statement "goto LAB_000eafac;" goto statement_identifier ;) })) (labeled_statement "LAB_000eaeb0:\n                          bVar1 = pRVar25->calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar25->calculate_only_;" (assignment_expression "bVar1 = pRVar25->calculate_only_" identifier = (field_expression "pRVar25->calculate_only_" identifier -> field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_228;" (assignment_expression "pcVar35 = pcStack_228" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                          pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }" { (expression_statement "pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]\n                          ;" (assignment_expression "pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]" identifier = (cast_expression "(Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ]))) ;) (if_statement "if (pRVar24 == pRStack_218) {\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" if (parenthesized_expression "(pRVar24 == pRStack_218)" ( (binary_expression "pRVar24 == pRStack_218" identifier == identifier) )) (compound_statement "{\n                            if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;\n                            iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" { (if_statement "if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7) goto LAB_000eb100;" if (parenthesized_expression "((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7)" ( (binary_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2) <= uVar7" (call_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_\n                                      >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb100;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" else (compound_statement "{\n                            iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" { (expression_statement "iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);" (assignment_expression "iVar2 = (*(code *)pRVar24)(pOVar23,uVar7)" identifier = (call_expression "(*(code *)pRVar24)(pOVar23,uVar7)" (parenthesized_expression "(*(code *)pRVar24)" ( (pointer_expression "*(code *)pRVar24" * (cast_expression "(code *)pRVar24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pOVar23,uVar7)" ( identifier , identifier )))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar7 & 0x7fffffff | 0x80000000" (binary_expression "uVar7 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_220 = CONCAT13(2,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(2,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_220._1_3_)" identifier (argument_list "(2,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)pRVar14)(pRVar13,puVar28);" (call_expression "(*(code *)pRVar14)(pRVar13,puVar28)" (parenthesized_expression "(*(code *)pRVar14)" ( (pointer_expression "*(code *)pRVar14" * (cast_expression "(code *)pRVar14" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar13,puVar28)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }" else (compound_statement "{\n                          piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar9 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*(code *)pRVar14)(pRVar13,puVar28);\n                        }" { (expression_statement "piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);" (assignment_expression "piVar9 = (int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" identifier = (cast_expression "(int *)((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" ( (binary_expression "(int)&pRVar24->calculated_value_ +\n                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill" (cast_expression "(int)&pRVar24->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar24->calculated_value_" & (field_expression "pRVar24->calculated_value_" identifier -> field_identifier))) + (cast_expression "(int)&pOVar23->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar23->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar23->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier) -> field_identifier)))) )))) ;) (if_statement "if ((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1) goto LAB_000eb0e4;" if (parenthesized_expression "((Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1)" ( (binary_expression "(Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555) <= in_t1" (cast_expression "(Relocate *)\n                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555)" ( (binary_expression "(*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)\n                              * -0x55555555" (parenthesized_expression "(*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)" ( (binary_expression "*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3" (binary_expression "*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_" (pointer_expression "*(int *)&pOVar23->field_0xec" * (cast_expression "(int *)&pOVar23->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->field_0xec" & (field_expression "pOVar23->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar23->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier))) >> number_literal) )) * number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb0e4;" goto statement_identifier ;)) (expression_statement "iVar2 = *piVar9;" (assignment_expression "iVar2 = *piVar9" identifier = (pointer_expression "*piVar9" * identifier)) ;) (if_statement "if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;" if (parenthesized_expression "((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))" ( (binary_expression "(iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2)" ( (comma_expression "iVar20 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2" (assignment_expression "iVar20 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "iVar2 != -2" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000ead48;" goto statement_identifier ;)) (expression_statement "*piVar9 = -2;" (assignment_expression "*piVar9 = -2" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar14)(pRVar13,puVar28);" (call_expression "(*(code *)pRVar14)(pRVar13,puVar28)" (parenthesized_expression "(*(code *)pRVar14)" ( (pointer_expression "*(code *)pRVar14" * (cast_expression "(code *)pRVar14" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar13,puVar28)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }" else (compound_statement "{\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*(code *)pRVar14)(pRVar13,puVar28);\n                      }" { (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar14)(pRVar13,puVar28);" (call_expression "(*(code *)pRVar14)(pRVar13,puVar28)" (parenthesized_expression "(*(code *)pRVar14)" ( (pointer_expression "*(code *)pRVar14" * (cast_expression "(code *)pRVar14" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar13,puVar28)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;" (assignment_expression "*(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1" (pointer_expression "*(int *)((int)pRVar13 + 0xc)" * (cast_expression "(int *)((int)pRVar13 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar13 + 0xc)" ( (binary_expression "(int)pRVar13 + 0xc" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pRVar13 + 0xc) + 1" (pointer_expression "*(int *)((int)pRVar13 + 0xc)" * (cast_expression "(int *)((int)pRVar13 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar13 + 0xc)" ( (binary_expression "(int)pRVar13 + 0xc" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }" else (compound_statement "{\n                      pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                      uStack_230 = *(undefined4 *)pcVar34;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*(code *)pRVar14)(pRVar13,puVar28);\n                    }" { (expression_statement "pRStack_22c = *(Relocate **)(pcVar34 + 4);" (assignment_expression "pRStack_22c = *(Relocate **)(pcVar34 + 4)" identifier = (pointer_expression "*(Relocate **)(pcVar34 + 4)" * (cast_expression "(Relocate **)(pcVar34 + 4)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar34 + 4)" ( (binary_expression "pcVar34 + 4" identifier + number_literal) ))))) ;) (expression_statement "uStack_230 = *(undefined4 *)pcVar34;" (assignment_expression "uStack_230 = *(undefined4 *)pcVar34" identifier = (pointer_expression "*(undefined4 *)pcVar34" * (cast_expression "(undefined4 *)pcVar34" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);" (assignment_expression "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_228 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_228 + -0x76e0)" * (cast_expression "(code **)(pcStack_228 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x76e0)" ( (binary_expression "pcStack_228 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_1c0,pOVar23,uStack_1d0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000eae6c;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000eae6c;" goto statement_identifier ;)) (labeled_statement "LAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);" statement_identifier : (expression_statement "uStack_220 = CONCAT13(8,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(8,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_220._1_3_)" identifier (argument_list "(8,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)pRVar14)(pRVar13,puVar28);" (call_expression "(*(code *)pRVar14)(pRVar13,puVar28)" (parenthesized_expression "(*(code *)pRVar14)" ( (pointer_expression "*(code *)pRVar14" * (cast_expression "(code *)pRVar14" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar13,puVar28)" ( identifier , identifier ))) ;) }))) (expression_statement "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);" (assignment_expression "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar26->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar26->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar26->calculated_value_ + 1" (cast_expression "(int)&pRVar26->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar26->calculated_value_" & (field_expression "pRVar26->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar34 = pcVar34 + 0x10;" (assignment_expression "pcVar34 = pcVar34 + 0x10" identifier = (binary_expression "pcVar34 + 0x10" identifier + number_literal)) ;) (expression_statement "pRVar24 = pRStack_1c4;" (assignment_expression "pRVar24 = pRStack_1c4" identifier = identifier) ;) }) while (parenthesized_expression "(pRStack_1c4 != pRVar26)" ( (binary_expression "pRStack_1c4 != pRVar26" identifier != identifier) )) ;) })) (labeled_statement "LAB_000eace0:\n                return SUB41(pRVar24,0);" statement_identifier : (return_statement "return SUB41(pRVar24,0);" return (call_expression "SUB41(pRVar24,0)" identifier (argument_list "(pRVar24,0)" ( identifier , number_literal ))) ;)) })) (if_statement "if (iStack_1cc == 4) {\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }" if (parenthesized_expression "(iStack_1cc == 4)" ( (binary_expression "iStack_1cc == 4" identifier == number_literal) )) (compound_statement "{\n                pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);\n                pRVar24 = pRStack_218;\n                if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);\n                pRVar14 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_220;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\nLAB_000eabd0:\n                pcVar35 = pcStack_228;\n                pRVar24 = *(Relocate **)(pcVar34 + 8);\n                if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }\n                in_t1 = (Relocate *)((int)pRVar24 * 2);\n                if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }\n                (**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }" { (expression_statement "pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018);" (assignment_expression "pRStack_218 = *(Relocate **)(pcVar31 + 0x3d7018)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d7018)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d7018)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7018)" ( (binary_expression "pcVar31 + 0x3d7018" identifier + number_literal) ))))) ;) (expression_statement "pRVar24 = pRStack_218;" (assignment_expression "pRVar24 = pRStack_218" identifier = identifier) ;) (if_statement "if (pRStack_1c4 == (Relocate *)0x0) goto LAB_000eace0;" if (parenthesized_expression "(pRStack_1c4 == (Relocate *)0x0)" ( (binary_expression "pRStack_1c4 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eace0;" goto statement_identifier ;)) (expression_statement "pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050);" (assignment_expression "pRVar26 = *(Relocate **)(pcVar31 + 0x3d7050)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d7050)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d7050)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d7050)" ( (binary_expression "pcVar31 + 0x3d7050" identifier + number_literal) ))))) ;) (expression_statement "pRVar14 = (Relocate *)0x0;" (assignment_expression "pRVar14 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var32 = (_func_int_varargs *)&uStack_220;" (assignment_expression "p_Var32 = (_func_int_varargs *)&uStack_220" identifier = (cast_expression "(_func_int_varargs *)&uStack_220" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_220" & identifier))) ;) (expression_statement "puVar28 = (uint *)&DAT_aaaaaaab;" (assignment_expression "puVar28 = (uint *)&DAT_aaaaaaab" identifier = (cast_expression "(uint *)&DAT_aaaaaaab" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_aaaaaaab" & identifier))) ;) (labeled_statement "LAB_000eabc8:\n                if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }" statement_identifier : (if_statement "if (uVar5 != 0) {\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n                  pRStack_22c = *(Relocate **)(pcVar34 + 4);\n                  uStack_230 = *(undefined4 *)pcVar34;\n                  iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);\n                  if (iVar2 != 0) goto LAB_000eabd0;\nLAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }" { (expression_statement "pRStack_22c = *(Relocate **)(pcVar34 + 4);" (assignment_expression "pRStack_22c = *(Relocate **)(pcVar34 + 4)" identifier = (pointer_expression "*(Relocate **)(pcVar34 + 4)" * (cast_expression "(Relocate **)(pcVar34 + 4)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar34 + 4)" ( (binary_expression "pcVar34 + 4" identifier + number_literal) ))))) ;) (expression_statement "uStack_230 = *(undefined4 *)pcVar34;" (assignment_expression "uStack_230 = *(undefined4 *)pcVar34" identifier = (pointer_expression "*(undefined4 *)pcVar34" * (cast_expression "(undefined4 *)pcVar34" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0);" (assignment_expression "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,pOVar23,uStack_1d0)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_228 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_228 + -0x76e0)" * (cast_expression "(code **)(pcStack_228 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x76e0)" ( (binary_expression "pcStack_228 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_1c0,pOVar23,uStack_1d0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000eabd0;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000eabd0;" goto statement_identifier ;)) (labeled_statement "LAB_000eacb4:\n                  uStack_220 = CONCAT13(8,uStack_220._1_3_);" statement_identifier : (expression_statement "uStack_220 = CONCAT13(8,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(8,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_220._1_3_)" identifier (argument_list "(8,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)pRVar26)(pRVar13,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar13,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar13,p_Var32)" ( identifier , identifier ))) ;) (expression_statement "pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);" (assignment_expression "pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar14->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar14->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar14->calculated_value_ + 1" (cast_expression "(int)&pRVar14->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar14->calculated_value_" & (field_expression "pRVar14->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar34 = pcVar34 + 0x18;" (assignment_expression "pcVar34 = pcVar34 + 0x18" identifier = (binary_expression "pcVar34 + 0x18" identifier + number_literal)) ;) (expression_statement "pRVar24 = pRStack_1c4;" (assignment_expression "pRVar24 = pRStack_1c4" identifier = identifier) ;) (if_statement "if (pRStack_1c4 == pRVar14) goto LAB_000eace0;" if (parenthesized_expression "(pRStack_1c4 == pRVar14)" ( (binary_expression "pRStack_1c4 == pRVar14" identifier == identifier) )) (goto_statement "goto LAB_000eace0;" goto statement_identifier ;)) (goto_statement "goto LAB_000eabc8;" goto statement_identifier ;) }))) (labeled_statement "LAB_000eabd0:\n                pcVar35 = pcStack_228;" statement_identifier : (expression_statement "pcVar35 = pcStack_228;" (assignment_expression "pcVar35 = pcStack_228" identifier = identifier) ;)) (expression_statement "pRVar24 = *(Relocate **)(pcVar34 + 8);" (assignment_expression "pRVar24 = *(Relocate **)(pcVar34 + 8)" identifier = (pointer_expression "*(Relocate **)(pcVar34 + 8)" * (cast_expression "(Relocate **)(pcVar34 + 8)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar34 + 8)" ( (binary_expression "pcVar34 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pRStack_1b8 <= pRVar24) {\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }" if (parenthesized_expression "(pRStack_1b8 <= pRVar24)" ( (binary_expression "pRStack_1b8 <= pRVar24" identifier <= identifier) )) (compound_statement "{\n                  uStack_220 = uStack_220 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar13,p_Var32);\nLAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);\n                  *(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar24 = pRStack_1c4;\n                  if (pRStack_1c4 == pRVar14) goto LAB_000eace0;\n                  goto LAB_000eabc8;\n                }" { (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar13,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar13,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar13,p_Var32)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000eabac:\n                  pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);" statement_identifier : (expression_statement "pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1);" (assignment_expression "pRVar14 = (Relocate *)((int)&pRVar14->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar14->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar14->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar14->calculated_value_ + 1" (cast_expression "(int)&pRVar14->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar14->calculated_value_" & (field_expression "pRVar14->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "*(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1;" (assignment_expression "*(int *)((int)pRVar13 + 0xc) = *(int *)((int)pRVar13 + 0xc) + 1" (pointer_expression "*(int *)((int)pRVar13 + 0xc)" * (cast_expression "(int *)((int)pRVar13 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar13 + 0xc)" ( (binary_expression "(int)pRVar13 + 0xc" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pRVar13 + 0xc) + 1" (pointer_expression "*(int *)((int)pRVar13 + 0xc)" * (cast_expression "(int *)((int)pRVar13 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar13 + 0xc)" ( (binary_expression "(int)pRVar13 + 0xc" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar34 = pcVar34 + 0x18;" (assignment_expression "pcVar34 = pcVar34 + 0x18" identifier = (binary_expression "pcVar34 + 0x18" identifier + number_literal)) ;) (expression_statement "pRVar24 = pRStack_1c4;" (assignment_expression "pRVar24 = pRStack_1c4" identifier = identifier) ;) (if_statement "if (pRStack_1c4 == pRVar14) goto LAB_000eace0;" if (parenthesized_expression "(pRStack_1c4 == pRVar14)" ( (binary_expression "pRStack_1c4 == pRVar14" identifier == identifier) )) (goto_statement "goto LAB_000eace0;" goto statement_identifier ;)) (goto_statement "goto LAB_000eabc8;" goto statement_identifier ;) })) (expression_statement "in_t1 = (Relocate *)((int)pRVar24 * 2);" (assignment_expression "in_t1 = (Relocate *)((int)pRVar24 * 2)" identifier = (cast_expression "(Relocate *)((int)pRVar24 * 2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar24 * 2)" ( (binary_expression "(int)pRVar24 * 2" (cast_expression "(int)pRVar24" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (pRVar12 != (Relocate *)0x0) {\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }" if (parenthesized_expression "(pRVar12 != (Relocate *)0x0)" ( (binary_expression "pRVar12 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  in_t1 = (Relocate *)((int)pRVar24 * 0x18);\n                  pRVar25 = pRVar12 + (int)pRVar24 * 3;\n                  uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;\n                  if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_228;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  goto LAB_000eabac;\n                }" { (expression_statement "in_t1 = (Relocate *)((int)pRVar24 * 0x18);" (assignment_expression "in_t1 = (Relocate *)((int)pRVar24 * 0x18)" identifier = (cast_expression "(Relocate *)((int)pRVar24 * 0x18)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar24 * 0x18)" ( (binary_expression "(int)pRVar24 * 0x18" (cast_expression "(int)pRVar24" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pRVar25 = pRVar12 + (int)pRVar24 * 3;" (assignment_expression "pRVar25 = pRVar12 + (int)pRVar24 * 3" identifier = (binary_expression "pRVar12 + (int)pRVar24 * 3" identifier + (binary_expression "(int)pRVar24 * 3" (cast_expression "(int)pRVar24" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar7 = (uint)*(ushort *)&pRVar25->field_0x6;" (assignment_expression "uVar7 = (uint)*(ushort *)&pRVar25->field_0x6" identifier = (binary_expression "(uint)*(ushort *)&pRVar25->field_0x6" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)&pRVar25->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25->field_0x6" & (field_expression "pRVar25->field_0x6" identifier -> field_identifier))))) ;) (if_statement "if (uVar7 < 0xff00) {\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }" if (parenthesized_expression "(uVar7 < 0xff00)" ( (binary_expression "uVar7 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;\n                    iVar2 = *(int *)(pcStack_228 + -0x77f0);\n                    pcVar35 = pcStack_228;\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;\n                    bVar1 = pRVar25->calculate_only_;\n                  }" { (labeled_statement "LAB_000eadbc:\n                    if (uVar7 == 0) goto LAB_000eac14;" statement_identifier : (if_statement "if (uVar7 == 0) goto LAB_000eac14;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eac14;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = pcStack_228;" (assignment_expression "pcVar35 = pcStack_228" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7) goto LAB_000eb154;" if (parenthesized_expression "((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7)" ( (binary_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar7" (call_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb154;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eacb4;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eacb4;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar25->calculate_only_;" (assignment_expression "bVar1 = pRVar25->calculate_only_" identifier = (field_expression "pRVar25->calculate_only_" identifier -> field_identifier)) ;) }) (else_clause "else {\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }" else (compound_statement "{\n                    if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }\nLAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;\n                  }" { (if_statement "if (uVar7 == 0xffff) {\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }" if (parenthesized_expression "(uVar7 == 0xffff)" ( (binary_expression "uVar7 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar2 = *(int *)&pOVar23->entsize_;\n                      pRStack_214 = pRVar24;\n                      pRStack_20c = in_t1;\n                      pRStack_210 = pRVar25;\n                      if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }\n                      uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);\n                      pRVar24 = pRStack_214;\n                      in_t1 = pRStack_20c;\n                      pRVar25 = pRStack_210;\n                      goto LAB_000eadbc;\n                    }" { (expression_statement "iVar2 = *(int *)&pOVar23->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar23->entsize_" identifier = (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_214 = pRVar24;" (assignment_expression "pRStack_214 = pRVar24" identifier = identifier) ;) (expression_statement "pRStack_20c = in_t1;" (assignment_expression "pRStack_20c = in_t1" identifier = identifier) ;) (expression_statement "pRStack_210 = pRVar25;" (assignment_expression "pRStack_210 = pRVar25" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar2;\n                      }" { (expression_statement "iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);" (assignment_expression "iVar2 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23)" identifier = (call_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23)" (parenthesized_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar23)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar23->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar23->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214);" (assignment_expression "uVar7 = (**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x7790))(iVar2,pOVar23,pRStack_214)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7790)" * (pointer_expression "*(code **)(pcStack_228 + -0x7790)" * (cast_expression "(code **)(pcStack_228 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7790)" ( (binary_expression "pcStack_228 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar23,pRStack_214)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar24 = pRStack_214;" (assignment_expression "pRVar24 = pRStack_214" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_20c;" (assignment_expression "in_t1 = pRStack_20c" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_210;" (assignment_expression "pRVar25 = pRStack_210" identifier = identifier) ;) (goto_statement "goto LAB_000eadbc;" goto statement_identifier ;) })) (labeled_statement "LAB_000eac14:\n                    bVar1 = pRVar25->calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar25->calculate_only_;" (assignment_expression "bVar1 = pRVar25->calculate_only_" identifier = (field_expression "pRVar25->calculate_only_" identifier -> field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_228;" (assignment_expression "pcVar35 = pcStack_228" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }" { (expression_statement "pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "pRVar24 = (Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]" identifier = (cast_expression "(Relocate *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ]))) ;) (if_statement "if (pRVar24 == pRStack_218) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(pRVar24 == pRStack_218)" ( (binary_expression "pRVar24 == pRStack_218" identifier == identifier) )) (compound_statement "{\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7) goto LAB_000eb100;" if (parenthesized_expression "((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7)" ( (binary_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar7" (call_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb100;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (*(code *)pRVar24)(pOVar23,uVar7);" (assignment_expression "iVar2 = (*(code *)pRVar24)(pOVar23,uVar7)" identifier = (call_expression "(*(code *)pRVar24)(pOVar23,uVar7)" (parenthesized_expression "(*(code *)pRVar24)" ( (pointer_expression "*(code *)pRVar24" * (cast_expression "(code *)pRVar24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pOVar23,uVar7)" ( identifier , identifier )))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar7 & 0x7fffffff | 0x80000000" (binary_expression "uVar7 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_220 = CONCAT13(1,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(1,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_220._1_3_)" identifier (argument_list "(1,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)pRVar26)(pRVar13,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar13,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar13,p_Var32)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }" else (compound_statement "{\n                    in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar13,p_Var32);\n                  }" { (expression_statement "in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);" (assignment_expression "in_t1 = (Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" identifier = (cast_expression "(Relocate *)\n                            ((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill)" ( (binary_expression "(int)&in_t1->calculated_value_ +\n                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill" (cast_expression "(int)&in_t1->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&in_t1->calculated_value_" & (field_expression "in_t1->calculated_value_" identifier -> field_identifier))) + (cast_expression "(int)&pOVar23->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar23->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar23->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier) -> field_identifier)))) )))) ;) (if_statement "if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24) goto LAB_000eb0e4;" if (parenthesized_expression "((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24)" ( (binary_expression "(Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar24" (cast_expression "(Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28)" ( (binary_expression "(*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar28" (parenthesized_expression "(*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)" ( (binary_expression "*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3" (binary_expression "*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_" (pointer_expression "*(int *)&pOVar23->field_0xec" * (cast_expression "(int *)&pOVar23->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->field_0xec" & (field_expression "pOVar23->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar23->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier))) >> number_literal) )) * (cast_expression "(int)puVar28" ( (type_descriptor "int" primitive_type) ) identifier)) ))) <= identifier) )) (goto_statement "goto LAB_000eb0e4;" goto statement_identifier ;)) (if_statement "if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }" if (parenthesized_expression "((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))" ( (binary_expression "(in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe)" (parenthesized_expression "(in_t1->calculated_value_ != 0)" ( (binary_expression "in_t1->calculated_value_ != 0" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) )) && (parenthesized_expression "(in_t1->calculated_value_ != 0xfffffffe)" ( (binary_expression "in_t1->calculated_value_ != 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) ))) )) (compound_statement "{\n                      iVar20 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }" { (expression_statement "iVar20 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar20 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000ead48:\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);" statement_identifier : (expression_statement "(**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);" (call_expression "(**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7810)" * (pointer_expression "*(code **)(pcStack_228 + -0x7810)" * (cast_expression "(code **)(pcStack_228 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7810)" ( (binary_expression "pcStack_228 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524)" ( (binary_expression "*(int *)(pcStack_228 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_228 + -0x7fc4)" * (cast_expression "(int *)(pcStack_228 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x7fc4)" ( (binary_expression "pcStack_228 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar20 + -0x3524" identifier + number_literal) ))) ;)) })) (expression_statement "in_t1->calculated_value_ = 0xfffffffe;" (assignment_expression "in_t1->calculated_value_ = 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) = number_literal) ;) (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar13,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar13,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar13,p_Var32)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000eabac;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140);" (call_expression "(**(code **)(pcStack_228 + -0x7810))\n                          (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7810)" * (pointer_expression "*(code **)(pcStack_228 + -0x7810)" * (cast_expression "(code **)(pcStack_228 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7810)" ( (binary_expression "pcStack_228 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_228 + -0x77f0) + -0x4140)" ( (binary_expression "*(int *)(pcStack_228 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_228 + -0x7fc4)" * (cast_expression "(int *)(pcStack_228 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x7fc4)" ( (binary_expression "pcStack_228 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_228 + -0x77f0) + -0x4140" (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eb0e4:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x4128)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x4128" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000eb100:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x40ec)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x40ec" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eb138:\n              iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;" statement_identifier : (expression_statement "iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104;" (assignment_expression "iVar2 = *(int *)(pcVar35 + -0x77f0) + -0x4104" identifier = (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x4104" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal)) ;)) (expression_statement "(**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2);" (call_expression "(**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000eb154:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);" statement_identifier : (expression_statement "pcVar31 = *(code **)(pcVar35 + -0x7810);" (assignment_expression "pcVar31 = *(code **)(pcVar35 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs;" (comma_expression "pcVar38 = Target_mips<64,_true>::scan_relocatable_relocs" (assignment_expression "pcVar38 = Target_mips<64" identifier = (binary_expression "Target_mips<64" identifier < number_literal)) , (binary_expression "_true>::scan_relocatable_relocs" identifier > (ERROR "::" : :) identifier)) ;) (expression_statement "(*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);" (call_expression "(*pcVar31)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" (parenthesized_expression "(*pcVar31)" ( (pointer_expression "*pcVar31" * identifier) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x34dc" identifier + number_literal) ))) ;) (expression_statement "pRVar18 = pRStack_210;" (assignment_expression "pRVar18 = pRStack_210" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_214;" (assignment_expression "pRVar25 = pRStack_214" identifier = identifier) ;) (expression_statement "pRVar24 = pRStack_22c;" (assignment_expression "pRVar24 = pRStack_22c" identifier = identifier) ;) (expression_statement "pcVar35 = pcVar31 + 0x3de0d4;" (assignment_expression "pcVar35 = pcVar31 + 0x3de0d4" identifier = (binary_expression "pcVar31 + 0x3de0d4" identifier + number_literal)) ;) (expression_statement "pRStack_25c = pRVar12;" (assignment_expression "pRStack_25c = pRVar12" identifier = identifier) ;) (expression_statement "uStack_268 = (uint)pRVar13;" (assignment_expression "uStack_268 = (uint)pRVar13" identifier = (cast_expression "(uint)pRVar13" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar7 = (uint)bStack_219;" (assignment_expression "uVar7 = (uint)bStack_219" identifier = (cast_expression "(uint)bStack_219" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pOVar22 = pOVar21;" (assignment_expression "pOVar22 = pOVar21" identifier = identifier) ;) (expression_statement "pcVar37 = pcStack_228;" (assignment_expression "pcVar37 = pcStack_228" identifier = identifier) ;) (expression_statement "pcStack_290 = pcVar35;" (assignment_expression "pcStack_290 = pcVar35" identifier = identifier) ;) (expression_statement "pcStack_264 = pcVar34;" (assignment_expression "pcStack_264 = pcVar34" identifier = identifier) ;) (expression_statement "pRStack_260 = pRVar26;" (assignment_expression "pRStack_260 = pRVar26" identifier = identifier) ;) (expression_statement "pOStack_258 = pOVar23;" (assignment_expression "pOStack_258 = pOVar23" identifier = identifier) ;) (expression_statement "pRStack_254 = pRVar14;" (assignment_expression "pRStack_254 = pRVar14" identifier = identifier) ;) (expression_statement "puStack_250 = puVar28;" (assignment_expression "puStack_250 = puVar28" identifier = identifier) ;) (expression_statement "uStack_24c = uVar5;" (assignment_expression "uStack_24c = uVar5" identifier = identifier) ;) (expression_statement "p_Stack_248 = p_Var32;" (assignment_expression "p_Stack_248 = p_Var32" identifier = identifier) ;) (expression_statement "pcStack_244 = pcVar38;" (assignment_expression "pcStack_244 = pcVar38" identifier = identifier) ;) (if_statement "if (pRStack_22c == (Relocate *)0x9) {\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }" if (parenthesized_expression "(pRStack_22c == (Relocate *)0x9)" ( (binary_expression "pRStack_22c == (Relocate *)0x9" identifier == (cast_expression "(Relocate *)0x9" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);\n                if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }\nLAB_000eb454:\n                return SUB41(pRVar12,0);\n              }" { (expression_statement "pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0);" (assignment_expression "pRVar12 = *(Relocate **)(pcVar31 + 0x3d68e0)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d68e0)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d68e0)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d68e0)" ( (binary_expression "pcVar31 + 0x3d68e0" identifier + number_literal) ))))) ;) (if_statement "if (pRStack_224 != (Relocate *)0x0) {\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }" if (parenthesized_expression "(pRStack_224 != (Relocate *)0x0)" ( (binary_expression "pRStack_224 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pRVar26 = (Relocate *)0x0;\n                  p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);\n                  pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;\n                  puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);\n                  do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);\n                }" { (expression_statement "pRVar26 = (Relocate *)0x0;" (assignment_expression "pRVar26 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8);" (assignment_expression "p_Var32 = *(_func_int_varargs **)(pcVar31 + 0x3d69b8)" identifier = (pointer_expression "*(_func_int_varargs **)(pcVar31 + 0x3d69b8)" * (cast_expression "(_func_int_varargs **)(pcVar31 + 0x3d69b8)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d69b8)" ( (binary_expression "pcVar31 + 0x3d69b8" identifier + number_literal) ))))) ;) (expression_statement "pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_;" (assignment_expression "pRStack_280 = (Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_" identifier = (cast_expression "(Relocate *)\n                                &(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_" & (field_expression "(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c].calculate_only_" (subscript_expression "(*(Relocate **)(pcVar31 + 0x3d68e0))[0x30c]" (parenthesized_expression "(*(Relocate **)(pcVar31 + 0x3d68e0))" ( (pointer_expression "*(Relocate **)(pcVar31 + 0x3d68e0)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d68e0)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d68e0)" ( (binary_expression "pcVar31 + 0x3d68e0" identifier + number_literal) )))) )) [ number_literal ]) . field_identifier)))) ;) (expression_statement "puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490);" (assignment_expression "puVar28 = (uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490)" identifier = (cast_expression "(uint *)(*(int *)(pcVar31 + 0x3d6110) + 0x5490)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar31 + 0x3d6110) + 0x5490)" ( (binary_expression "*(int *)(pcVar31 + 0x3d6110) + 0x5490" (pointer_expression "*(int *)(pcVar31 + 0x3d6110)" * (cast_expression "(int *)(pcVar31 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar31 + 0x3d6110)" ( (binary_expression "pcVar31 + 0x3d6110" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  } while (pRStack_224 != pRVar26);" do (compound_statement "{\n                    if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }\nLAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar37 = pcVar37 + 0x10;\n                    pRVar12 = pRStack_224;\n                  }" { (if_statement "if (uVar7 == 0) {\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);\n                      if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }" { (labeled_statement "LAB_000eb4e4:\n                      pRVar12 = *(Relocate **)(pcVar37 + 8);" statement_identifier : (expression_statement "pRVar12 = *(Relocate **)(pcVar37 + 8);" (assignment_expression "pRVar12 = *(Relocate **)(pcVar37 + 8)" identifier = (pointer_expression "*(Relocate **)(pcVar37 + 8)" * (cast_expression "(Relocate **)(pcVar37 + 8)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 8)" ( (binary_expression "pcVar37 + 8" identifier + number_literal) ))))) ;)) (if_statement "if (pRVar12 < pRStack_218) {\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" if (parenthesized_expression "(pRVar12 < pRStack_218)" ( (binary_expression "pRVar12 < pRStack_218" identifier < identifier) )) (compound_statement "{\n                        pcVar35 = pcStack_290;\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;\n                        in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                        if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        pcVar35 = pcStack_290;\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }\n                        if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }\n                        p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }\n                        pcVar35 = *(code **)(pcStack_290 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);\n                        (*pcVar35)(pRVar18,&uStack_288);\n                        if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" { (expression_statement "pcVar35 = pcStack_290;" (assignment_expression "pcVar35 = pcStack_290" identifier = identifier) ;) (if_statement "if (pRVar25 == (Relocate *)0x0) goto LAB_000eb878;" if (parenthesized_expression "(pRVar25 == (Relocate *)0x0)" ( (binary_expression "pRVar25 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eb878;" goto statement_identifier ;)) (expression_statement "iVar2 = (int)pRVar12 * 0x18;" (assignment_expression "iVar2 = (int)pRVar12 * 0x18" identifier = (binary_expression "(int)pRVar12 * 0x18" (cast_expression "(int)pRVar12" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pRVar14 = pRVar25 + (int)pRVar12 * 3;" (assignment_expression "pRVar14 = pRVar25 + (int)pRVar12 * 3" identifier = (binary_expression "pRVar25 + (int)pRVar12 * 3" identifier + (binary_expression "(int)pRVar12 * 3" (cast_expression "(int)pRVar12" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6;" (assignment_expression "pRVar13 = (Relocate *)(uint)*(ushort *)&pRVar14->field_0x6" identifier = (binary_expression "(Relocate *)(uint)*(ushort *)&pRVar14->field_0x6" (cast_expression "(Relocate *)(uint)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uint)" ( identifier ))) * (cast_expression "(ushort *)&pRVar14->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14->field_0x6" & (field_expression "pRVar14->field_0x6" identifier -> field_identifier))))) ;) (expression_statement "in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf];" (assignment_expression "in_t1 = (Relocate *)(uint)(byte)pcVar37[0xf]" identifier = (cast_expression "(Relocate *)(uint)(byte)pcVar37[0xf]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)(byte)pcVar37[0xf]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)pcVar37[0xf]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "pcVar37[0xf]" identifier [ number_literal ]))))) ;) (if_statement "if (pRVar13 < (Relocate *)0xff00) {\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }" if (parenthesized_expression "(pRVar13 < (Relocate *)0xff00)" ( (binary_expression "pRVar13 < (Relocate *)0xff00" identifier < (cast_expression "(Relocate *)0xff00" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;\n                          pcVar35 = pcStack_290;\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;\n                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;\n                          bVar1 = pRVar14->calculate_only_;\n                        }" { (labeled_statement "LAB_000eb628:\n                          if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;" statement_identifier : (if_statement "if (pRVar13 == (Relocate *)0x0) goto LAB_000eb52c;" if (parenthesized_expression "(pRVar13 == (Relocate *)0x0)" ( (binary_expression "pRVar13 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eb52c;" goto statement_identifier ;))) (expression_statement "pcVar35 = pcStack_290;" (assignment_expression "pcVar35 = pcStack_290" identifier = identifier) ;) (if_statement "if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb85c;" if (parenthesized_expression "((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13)" ( (binary_expression "(Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13" (cast_expression "(Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" ( (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2" (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_" (cast_expression "(int)pOVar21->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb85c;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)\n                          goto LAB_000eb5c8;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4)" * (cast_expression "(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4)" ( (binary_expression "*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4" (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier)))) + (binary_expression "(int)pRVar13 * 4" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eb5c8;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar14->calculate_only_;" (assignment_expression "bVar1 = pRVar14->calculate_only_" identifier = (field_expression "pRVar14->calculate_only_" identifier -> field_identifier)) ;) }) (else_clause "else {\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }" else (compound_statement "{\n                          if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }\nLAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;\n                        }" { (if_statement "if (pRVar13 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }" if (parenthesized_expression "(pRVar13 == (Relocate *)0xffff)" ( (binary_expression "pRVar13 == (Relocate *)0xffff" identifier == (cast_expression "(Relocate *)0xffff" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            iVar20 = *(int *)&pOVar21->entsize_;\n                            iStack_270 = iVar2;\n                            pRStack_27c = pRVar12;\n                            pRStack_278 = in_t1;\n                            pRStack_274 = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }\n                            pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);\n                            iVar2 = iStack_270;\n                            pRVar12 = pRStack_27c;\n                            in_t1 = pRStack_278;\n                            pRVar14 = pRStack_274;\n                            goto LAB_000eb628;\n                          }" { (expression_statement "iVar20 = *(int *)&pOVar21->entsize_;" (assignment_expression "iVar20 = *(int *)&pOVar21->entsize_" identifier = (pointer_expression "*(int *)&pOVar21->entsize_" * (cast_expression "(int *)&pOVar21->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->entsize_" & (field_expression "pOVar21->entsize_" identifier -> field_identifier))))) ;) (expression_statement "iStack_270 = iVar2;" (assignment_expression "iStack_270 = iVar2" identifier = identifier) ;) (expression_statement "pRStack_27c = pRVar12;" (assignment_expression "pRStack_27c = pRVar12" identifier = identifier) ;) (expression_statement "pRStack_278 = in_t1;" (assignment_expression "pRStack_278 = in_t1" identifier = identifier) ;) (expression_statement "pRStack_274 = pRVar14;" (assignment_expression "pRStack_274 = pRVar14" identifier = identifier) ;) (if_statement "if (iVar20 == 0) {\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }" if (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);\n                              *(int *)&pOVar21->entsize_ = iVar20;\n                            }" { (expression_statement "iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288);" (assignment_expression "iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288)" identifier = (call_expression "(*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar21,&uStack_288)" (parenthesized_expression "(*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar21->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar21->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar21->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar21,&uStack_288)" ( identifier , (pointer_expression "&uStack_288" & identifier) )))) ;) (expression_statement "*(int *)&pOVar21->entsize_ = iVar20;" (assignment_expression "*(int *)&pOVar21->entsize_ = iVar20" (pointer_expression "*(int *)&pOVar21->entsize_" * (cast_expression "(int *)&pOVar21->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->entsize_" & (field_expression "pOVar21->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c);" (assignment_expression "pRVar13 = (Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c)" identifier = (cast_expression "(Relocate *)\n                                      (**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_290 + -0x7790))\n                                                (iVar20,pOVar21,pRStack_27c)" (parenthesized_expression "(**(code **)(pcStack_290 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_290 + -0x7790)" * (pointer_expression "*(code **)(pcStack_290 + -0x7790)" * (cast_expression "(code **)(pcStack_290 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_290 + -0x7790)" ( (binary_expression "pcStack_290 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar20,pOVar21,pRStack_27c)" ( identifier , identifier , identifier ))))) ;) (expression_statement "iVar2 = iStack_270;" (assignment_expression "iVar2 = iStack_270" identifier = identifier) ;) (expression_statement "pRVar12 = pRStack_27c;" (assignment_expression "pRVar12 = pRStack_27c" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_278;" (assignment_expression "in_t1 = pRStack_278" identifier = identifier) ;) (expression_statement "pRVar14 = pRStack_274;" (assignment_expression "pRVar14 = pRStack_274" identifier = identifier) ;) (goto_statement "goto LAB_000eb628;" goto statement_identifier ;) })) (labeled_statement "LAB_000eb52c:\n                          bVar1 = pRVar14->calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar14->calculate_only_;" (assignment_expression "bVar1 = pRVar14->calculate_only_" identifier = (field_expression "pRVar14->calculate_only_" identifier -> field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_290;" (assignment_expression "pcVar35 = pcStack_290" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) != 3) {\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }" if (parenthesized_expression "((bVar1 & 0xf) != 3)" ( (binary_expression "(bVar1 & 0xf) != 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                          if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;\n                          piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }\n                          goto LAB_000eb808;\n                        }" { (if_statement "if ((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))\n                          goto LAB_000eb5c8;" if (parenthesized_expression "((in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0))" ( (binary_expression "(in_t1 == (Relocate *)0x0) && (pRVar12 == (Relocate *)0x0)" (parenthesized_expression "(in_t1 == (Relocate *)0x0)" ( (binary_expression "in_t1 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(pRVar12 == (Relocate *)0x0)" ( (binary_expression "pRVar12 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000eb5c8;" goto statement_identifier ;)) (expression_statement "piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);" (assignment_expression "piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2)" identifier = (cast_expression "(int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2)" ( (binary_expression "(int)&pOVar21->free_space_fill_->_vptr_Output_fill +\n                                          iVar2" (cast_expression "(int)&pOVar21->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar21->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar21->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar21->free_space_fill_" identifier -> field_identifier) -> field_identifier))) + identifier) )))) ;) (if_statement "if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }" if (parenthesized_expression "(pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555))" ( (binary_expression "pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)" identifier < (cast_expression "(Relocate *)\n                                        ((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)" ( (binary_expression "(*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555" (parenthesized_expression "(*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3)" ( (binary_expression "*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_ >> 3" (binary_expression "*(int *)&pOVar21->field_0xec -\n                                          (int)pOVar21->free_space_fill_" (pointer_expression "*(int *)&pOVar21->field_0xec" * (cast_expression "(int *)&pOVar21->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->field_0xec" & (field_expression "pOVar21->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar21->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->free_space_fill_" identifier -> field_identifier))) >> number_literal) )) * number_literal) )))) )) (compound_statement "{\n                            iVar2 = *piVar9;\n                            if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000eb4ac;\n                          }" { (expression_statement "iVar2 = *piVar9;" (assignment_expression "iVar2 = *piVar9" identifier = (pointer_expression "*piVar9" * identifier)) ;) (if_statement "if (iVar2 != 0) {\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n                              uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                              pRVar12 = (Relocate *)0x9;\n                              if (iVar2 != -2) goto LAB_000eb2d8;\n                            }" { (expression_statement "uVar5 = *(uint *)(pcStack_290 + -0x77f0);" (assignment_expression "uVar5 = *(uint *)(pcStack_290 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_290 + -0x77f0)" * (cast_expression "(uint *)(pcStack_290 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_290 + -0x77f0)" ( (binary_expression "pcStack_290 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = (Relocate *)0x9;" (assignment_expression "pRVar12 = (Relocate *)0x9" identifier = (cast_expression "(Relocate *)0x9" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 != -2) goto LAB_000eb2d8;" if (parenthesized_expression "(iVar2 != -2)" ( (binary_expression "iVar2 != -2" identifier != number_literal) )) (goto_statement "goto LAB_000eb2d8;" goto statement_identifier ;)) })) (expression_statement "*piVar9 = -2;" (assignment_expression "*piVar9 = -2" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (goto_statement "goto LAB_000eb4ac;" goto statement_identifier ;) })) (goto_statement "goto LAB_000eb808;" goto statement_identifier ;) })) (if_statement "if (in_t1 != (Relocate *)&DAT_00000004) {\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }" if (parenthesized_expression "(in_t1 != (Relocate *)&DAT_00000004)" ( (binary_expression "in_t1 != (Relocate *)&DAT_00000004" identifier != (cast_expression "(Relocate *)&DAT_00000004" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                          pRStack_27c = pRVar13;\n                          uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);\n                          pcVar35 = pcStack_290;\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000eb69c_caseD_3;\n                        }" { (expression_statement "pRStack_27c = pRVar13;" (assignment_expression "pRStack_27c = pRVar13" identifier = identifier) ;) (expression_statement "uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21);" (assignment_expression "uVar5 = (*(code *)pRStack_280)(in_t1,pOVar21)" identifier = (call_expression "(*(code *)pRStack_280)(in_t1,pOVar21)" (parenthesized_expression "(*(code *)pRStack_280)" ( (pointer_expression "*(code *)pRStack_280" * (cast_expression "(code *)pRStack_280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(in_t1,pOVar21)" ( identifier , identifier )))) ;) (expression_statement "pcVar35 = pcStack_290;" (assignment_expression "pcVar35 = pcStack_290" identifier = identifier) ;) (if_statement "if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }" if (parenthesized_expression "(uVar5 < 9)" ( (binary_expression "uVar5 < 9" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcStack_290 + puVar28[uVar5]))();\n                            return (bool)uVar11;\n                          }" { comment comment (expression_statement "uVar11 = (*(pcStack_290 + puVar28[uVar5]))();" (assignment_expression "uVar11 = (*(pcStack_290 + puVar28[uVar5]))()" identifier = (call_expression "(*(pcStack_290 + puVar28[uVar5]))()" (parenthesized_expression "(*(pcStack_290 + puVar28[uVar5]))" ( (pointer_expression "*(pcStack_290 + puVar28[uVar5])" * (parenthesized_expression "(pcStack_290 + puVar28[uVar5])" ( (binary_expression "pcStack_290 + puVar28[uVar5]" identifier + (subscript_expression "puVar28[uVar5]" identifier [ identifier ])) ))) )) (argument_list "()" ( )))) ;) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) (goto_statement "goto switchD_000eb69c_caseD_3;" goto statement_identifier ;) })) (expression_statement "p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "p_Var33 = (pOVar21->super_Output_data)._vptr_Output_data[0x18]" identifier = (subscript_expression "(pOVar21->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar21->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var33 == p_Var32) {\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }\n                        else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }" if (parenthesized_expression "(p_Var33 == p_Var32)" ( (binary_expression "p_Var33 == p_Var32" identifier == identifier) )) (compound_statement "{\n                          if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;\n                          iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);\n                          pRStack_27c = pRVar24;\n                        }" { (if_statement "if ((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13) goto LAB_000eb840;" if (parenthesized_expression "((Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13)" ( (binary_expression "(Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                              <= pRVar13" (cast_expression "(Relocate *)\n                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" ( (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2" (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_" (cast_expression "(int)pOVar21->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb840;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4)" * (cast_expression "(int *)(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4)" ( (binary_expression "*(int *)&pOVar21->load_address_ + (int)pRVar13 * 4" (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier)))) + (binary_expression "(int)pRVar13 * 4" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))))) ;) (expression_statement "pRStack_27c = pRVar24;" (assignment_expression "pRStack_27c = pRVar24" identifier = identifier) ;) }) (else_clause "else {\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }" else (compound_statement "{\n                          pRStack_27c = pRVar24;\n                          iVar2 = (*p_Var33)(pOVar21,pRVar13);\n                        }" { (expression_statement "pRStack_27c = pRVar24;" (assignment_expression "pRStack_27c = pRVar24" identifier = identifier) ;) (expression_statement "iVar2 = (*p_Var33)(pOVar21,pRVar13);" (assignment_expression "iVar2 = (*p_Var33)(pOVar21,pRVar13)" identifier = (call_expression "(*p_Var33)(pOVar21,pRVar13)" (parenthesized_expression "(*p_Var33)" ( (pointer_expression "*p_Var33" * identifier) )) (argument_list "(pOVar21,pRVar13)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar35 = *(code **)(pcStack_290 + -0x76e4);" (assignment_expression "pcVar35 = *(code **)(pcStack_290 + -0x76e4)" identifier = (pointer_expression "*(code **)(pcStack_290 + -0x76e4)" * (cast_expression "(code **)(pcStack_290 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_290 + -0x76e4)" ( (binary_expression "pcStack_290 + -0x76e4" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_);" (assignment_expression "uStack_288 = CONCAT13((char)pRStack_27c,uStack_288._1_3_)" identifier = (call_expression "CONCAT13((char)pRStack_27c,uStack_288._1_3_)" identifier (argument_list "((char)pRStack_27c,uStack_288._1_3_)" ( (cast_expression "(char)pRStack_27c" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_288._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar35)(pRVar18,&uStack_288);" (call_expression "(*pcVar35)(pRVar18,&uStack_288)" (parenthesized_expression "(*pcVar35)" ( (pointer_expression "*pcVar35" * identifier) )) (argument_list "(pRVar18,&uStack_288)" ( identifier , (pointer_expression "&uStack_288" & identifier) ))) ;) (if_statement "if (pRStack_27c == (Relocate *)&DAT_00000008) goto LAB_000eb4cc;" if (parenthesized_expression "(pRStack_27c == (Relocate *)&DAT_00000008)" ( (binary_expression "pRStack_27c == (Relocate *)&DAT_00000008" identifier == (cast_expression "(Relocate *)&DAT_00000008" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000eb4cc;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)&pRVar18[1].calculate_only_;" (assignment_expression "iVar2 = *(int *)&pRVar18[1].calculate_only_" identifier = (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier))))) ;) }) (else_clause "else {\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" else (compound_statement "{\nLAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;\n                        (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" { (labeled_statement "LAB_000eb4ac:\n                        uStack_288 = uStack_288 & 0xffffff;" statement_identifier : (expression_statement "uStack_288 = uStack_288 & 0xffffff;" (assignment_expression "uStack_288 = uStack_288 & 0xffffff" identifier = (binary_expression "uStack_288 & 0xffffff" identifier & number_literal)) ;)) (expression_statement "(**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);" (call_expression "(**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288)" (parenthesized_expression "(**(code **)(pcStack_290 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_290 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_290 + -0x76e4)" * (cast_expression "(code **)(pcStack_290 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_290 + -0x76e4)" ( (binary_expression "pcStack_290 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pRVar18,&uStack_288)" ( identifier , (pointer_expression "&uStack_288" & identifier) ))) ;) (expression_statement "iVar2 = *(int *)&pRVar18[1].calculate_only_;" (assignment_expression "iVar2 = *(int *)&pRVar18[1].calculate_only_" identifier = (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier))))) ;) }))) (expression_statement "*(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;" (assignment_expression "*(int *)&pRVar18[1].calculate_only_ = iVar2 + 1" (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }" else (compound_statement "{\n                      iStack_294 = *(int *)(pcVar37 + 4);\n                      uStack_298 = *(undefined4 *)pcVar37;\n                      iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                      if (iVar2 != 0) goto LAB_000eb4e4;\nLAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                      (**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);\n                    }" { (expression_statement "iStack_294 = *(int *)(pcVar37 + 4);" (assignment_expression "iStack_294 = *(int *)(pcVar37 + 4)" identifier = (pointer_expression "*(int *)(pcVar37 + 4)" * (cast_expression "(int *)(pcVar37 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 4)" ( (binary_expression "pcVar37 + 4" identifier + number_literal) ))))) ;) (expression_statement "uStack_298 = *(undefined4 *)pcVar37;" (assignment_expression "uStack_298 = *(undefined4 *)pcVar37" identifier = (pointer_expression "*(undefined4 *)pcVar37" * (cast_expression "(undefined4 *)pcVar37" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);" (assignment_expression "iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230)" identifier = (call_expression "(**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230)" (parenthesized_expression "(**(code **)(pcStack_290 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_290 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_290 + -0x76e0)" * (cast_expression "(code **)(pcStack_290 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_290 + -0x76e0)" ( (binary_expression "pcStack_290 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_220,pOVar21,uStack_230)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000eb4e4;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000eb4e4;" goto statement_identifier ;)) (labeled_statement "LAB_000eb5c8:\n                      uStack_288 = CONCAT13(8,uStack_288._1_3_);" statement_identifier : (expression_statement "uStack_288 = CONCAT13(8,uStack_288._1_3_);" (assignment_expression "uStack_288 = CONCAT13(8,uStack_288._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_288._1_3_)" identifier (argument_list "(8,uStack_288._1_3_)" ( number_literal , (field_expression "uStack_288._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288);" (call_expression "(**(code **)(pcStack_290 + -0x76e4))(pRVar18,&uStack_288)" (parenthesized_expression "(**(code **)(pcStack_290 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_290 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_290 + -0x76e4)" * (cast_expression "(code **)(pcStack_290 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_290 + -0x76e4)" ( (binary_expression "pcStack_290 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pRVar18,&uStack_288)" ( identifier , (pointer_expression "&uStack_288" & identifier) ))) ;) }))) (labeled_statement "LAB_000eb4cc:\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);" statement_identifier : (expression_statement "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);" (assignment_expression "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar26->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar26->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar26->calculated_value_ + 1" (cast_expression "(int)&pRVar26->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar26->calculated_value_" & (field_expression "pRVar26->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "pcVar37 = pcVar37 + 0x10;" (assignment_expression "pcVar37 = pcVar37 + 0x10" identifier = (binary_expression "pcVar37 + 0x10" identifier + number_literal)) ;) (expression_statement "pRVar12 = pRStack_224;" (assignment_expression "pRVar12 = pRStack_224" identifier = identifier) ;) }) while (parenthesized_expression "(pRStack_224 != pRVar26)" ( (binary_expression "pRStack_224 != pRVar26" identifier != identifier) )) ;) })) (labeled_statement "LAB_000eb454:\n                return SUB41(pRVar12,0);" statement_identifier : (return_statement "return SUB41(pRVar12,0);" return (call_expression "SUB41(pRVar12,0)" identifier (argument_list "(pRVar12,0)" ( identifier , number_literal ))) ;)) })) (if_statement "if (pRStack_22c == (Relocate *)&DAT_00000004) {\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }" if (parenthesized_expression "(pRStack_22c == (Relocate *)&DAT_00000004)" ( (binary_expression "pRStack_22c == (Relocate *)&DAT_00000004" identifier == (cast_expression "(Relocate *)&DAT_00000004" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);\n                pRVar12 = pRStack_280;\n                if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_288;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\nLAB_000eb230:\n                pcVar35 = pcStack_290;\n                in_t1 = *(Relocate **)(pcVar37 + 8);\n                if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }\n                (**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);\nLAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);\n              }" { (expression_statement "pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8);" (assignment_expression "pRStack_280 = *(Relocate **)(pcVar31 + 0x3d69b8)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d69b8)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d69b8)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d69b8)" ( (binary_expression "pcVar31 + 0x3d69b8" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = pRStack_280;" (assignment_expression "pRVar12 = pRStack_280" identifier = identifier) ;) (if_statement "if (pRStack_224 == (Relocate *)0x0) goto LAB_000eb454;" if (parenthesized_expression "(pRStack_224 == (Relocate *)0x0)" ( (binary_expression "pRStack_224 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eb454;" goto statement_identifier ;)) (expression_statement "pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0);" (assignment_expression "pRVar26 = *(Relocate **)(pcVar31 + 0x3d69f0)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d69f0)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d69f0)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d69f0)" ( (binary_expression "pcVar31 + 0x3d69f0" identifier + number_literal) ))))) ;) (expression_statement "pRVar24 = (Relocate *)0x0;" (assignment_expression "pRVar24 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var32 = (_func_int_varargs *)&uStack_288;" (assignment_expression "p_Var32 = (_func_int_varargs *)&uStack_288" identifier = (cast_expression "(_func_int_varargs *)&uStack_288" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_288" & identifier))) ;) (expression_statement "puVar28 = (uint *)&DAT_aaaaaaab;" (assignment_expression "puVar28 = (uint *)&DAT_aaaaaaab" identifier = (cast_expression "(uint *)&DAT_aaaaaaab" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_aaaaaaab" & identifier))) ;) (labeled_statement "LAB_000eb228:\n                if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }" statement_identifier : (if_statement "if (uVar7 != 0) {\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n                  iStack_294 = *(int *)(pcVar37 + 4);\n                  uStack_298 = *(undefined4 *)pcVar37;\n                  iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);\n                  if (iVar2 != 0) goto LAB_000eb230;\nLAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }" { (expression_statement "iStack_294 = *(int *)(pcVar37 + 4);" (assignment_expression "iStack_294 = *(int *)(pcVar37 + 4)" identifier = (pointer_expression "*(int *)(pcVar37 + 4)" * (cast_expression "(int *)(pcVar37 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 4)" ( (binary_expression "pcVar37 + 4" identifier + number_literal) ))))) ;) (expression_statement "uStack_298 = *(undefined4 *)pcVar37;" (assignment_expression "uStack_298 = *(undefined4 *)pcVar37" identifier = (pointer_expression "*(undefined4 *)pcVar37" * (cast_expression "(undefined4 *)pcVar37" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230);" (assignment_expression "iVar2 = (**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230)" identifier = (call_expression "(**(code **)(pcStack_290 + -0x76e0))(uStack_220,pOVar21,uStack_230)" (parenthesized_expression "(**(code **)(pcStack_290 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_290 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_290 + -0x76e0)" * (cast_expression "(code **)(pcStack_290 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_290 + -0x76e0)" ( (binary_expression "pcStack_290 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_220,pOVar21,uStack_230)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000eb230;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000eb230;" goto statement_identifier ;)) (labeled_statement "LAB_000eb42c:\n                  uStack_288 = CONCAT13(8,uStack_288._1_3_);" statement_identifier : (expression_statement "uStack_288 = CONCAT13(8,uStack_288._1_3_);" (assignment_expression "uStack_288 = CONCAT13(8,uStack_288._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_288._1_3_)" identifier (argument_list "(8,uStack_288._1_3_)" ( number_literal , (field_expression "uStack_288._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)pRVar26)(pRVar18,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar18,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar18,p_Var32)" ( identifier , identifier ))) ;) (expression_statement "pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);" (assignment_expression "pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar24->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar24->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar24->calculated_value_ + 1" (cast_expression "(int)&pRVar24->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar24->calculated_value_" & (field_expression "pRVar24->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar37 = pcVar37 + 0x18;" (assignment_expression "pcVar37 = pcVar37 + 0x18" identifier = (binary_expression "pcVar37 + 0x18" identifier + number_literal)) ;) (expression_statement "pRVar12 = pRStack_224;" (assignment_expression "pRVar12 = pRStack_224" identifier = identifier) ;) (if_statement "if (pRStack_224 == pRVar24) goto LAB_000eb454;" if (parenthesized_expression "(pRStack_224 == pRVar24)" ( (binary_expression "pRStack_224 == pRVar24" identifier == identifier) )) (goto_statement "goto LAB_000eb454;" goto statement_identifier ;)) (goto_statement "goto LAB_000eb228;" goto statement_identifier ;) }))) (labeled_statement "LAB_000eb230:\n                pcVar35 = pcStack_290;" statement_identifier : (expression_statement "pcVar35 = pcStack_290;" (assignment_expression "pcVar35 = pcStack_290" identifier = identifier) ;)) (expression_statement "in_t1 = *(Relocate **)(pcVar37 + 8);" (assignment_expression "in_t1 = *(Relocate **)(pcVar37 + 8)" identifier = (pointer_expression "*(Relocate **)(pcVar37 + 8)" * (cast_expression "(Relocate **)(pcVar37 + 8)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 8)" ( (binary_expression "pcVar37 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pRStack_218 <= in_t1) {\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }" if (parenthesized_expression "(pRStack_218 <= in_t1)" ( (binary_expression "pRStack_218 <= in_t1" identifier <= identifier) )) (compound_statement "{\n                  uStack_288 = uStack_288 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar18,p_Var32);\nLAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar37 = pcVar37 + 0x18;\n                  pRVar12 = pRStack_224;\n                  if (pRStack_224 == pRVar24) goto LAB_000eb454;\n                  goto LAB_000eb228;\n                }" { (expression_statement "uStack_288 = uStack_288 & 0xffffff;" (assignment_expression "uStack_288 = uStack_288 & 0xffffff" identifier = (binary_expression "uStack_288 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar18,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar18,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar18,p_Var32)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000eb20c:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);" statement_identifier : (expression_statement "pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);" (assignment_expression "pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar24->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar24->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar24->calculated_value_ + 1" (cast_expression "(int)&pRVar24->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar24->calculated_value_" & (field_expression "pRVar24->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "*(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;" (assignment_expression "*(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "*(int *)&pRVar18[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)))) + number_literal)) ;) (expression_statement "pcVar37 = pcVar37 + 0x18;" (assignment_expression "pcVar37 = pcVar37 + 0x18" identifier = (binary_expression "pcVar37 + 0x18" identifier + number_literal)) ;) (expression_statement "pRVar12 = pRStack_224;" (assignment_expression "pRVar12 = pRStack_224" identifier = identifier) ;) (if_statement "if (pRStack_224 == pRVar24) goto LAB_000eb454;" if (parenthesized_expression "(pRStack_224 == pRVar24)" ( (binary_expression "pRStack_224 == pRVar24" identifier == identifier) )) (goto_statement "goto LAB_000eb454;" goto statement_identifier ;)) (goto_statement "goto LAB_000eb228;" goto statement_identifier ;) })) (if_statement "if (pRVar25 != (Relocate *)0x0) {\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }" if (parenthesized_expression "(pRVar25 != (Relocate *)0x0)" ( (binary_expression "pRVar25 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  iVar2 = (int)in_t1 * 0x18;\n                  pRVar14 = pRVar25 + (int)in_t1 * 3;\n                  uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;\n                  pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];\n                  if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  pcVar35 = pcStack_290;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  goto LAB_000eb20c;\n                }" { (expression_statement "iVar2 = (int)in_t1 * 0x18;" (assignment_expression "iVar2 = (int)in_t1 * 0x18" identifier = (binary_expression "(int)in_t1 * 0x18" (cast_expression "(int)in_t1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pRVar14 = pRVar25 + (int)in_t1 * 3;" (assignment_expression "pRVar14 = pRVar25 + (int)in_t1 * 3" identifier = (binary_expression "pRVar25 + (int)in_t1 * 3" identifier + (binary_expression "(int)in_t1 * 3" (cast_expression "(int)in_t1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar5 = (uint)*(ushort *)&pRVar14->field_0x6;" (assignment_expression "uVar5 = (uint)*(ushort *)&pRVar14->field_0x6" identifier = (binary_expression "(uint)*(ushort *)&pRVar14->field_0x6" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)&pRVar14->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14->field_0x6" & (field_expression "pRVar14->field_0x6" identifier -> field_identifier))))) ;) (expression_statement "pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf];" (assignment_expression "pRVar12 = (Relocate *)(uint)(byte)pcVar37[0xf]" identifier = (cast_expression "(Relocate *)(uint)(byte)pcVar37[0xf]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)(byte)pcVar37[0xf]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)pcVar37[0xf]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "pcVar37[0xf]" identifier [ number_literal ]))))) ;) (if_statement "if (uVar5 < 0xff00) {\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }" if (parenthesized_expression "(uVar5 < 0xff00)" ( (binary_expression "uVar5 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;\n                    uVar19 = *(uint *)(pcStack_290 + -0x77f0);\n                    pcVar35 = pcStack_290;\n                    if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;\n                    if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;\n                    bVar1 = pRVar14->calculate_only_;\n                  }" { (labeled_statement "LAB_000eb354:\n                    if (uVar5 == 0) goto LAB_000eb278;" statement_identifier : (if_statement "if (uVar5 == 0) goto LAB_000eb278;" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eb278;" goto statement_identifier ;))) (expression_statement "uVar19 = *(uint *)(pcStack_290 + -0x77f0);" (assignment_expression "uVar19 = *(uint *)(pcStack_290 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_290 + -0x77f0)" * (cast_expression "(uint *)(pcStack_290 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_290 + -0x77f0)" ( (binary_expression "pcStack_290 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = pcStack_290;" (assignment_expression "pcVar35 = pcStack_290" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5) goto LAB_000eb860;" if (parenthesized_expression "((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5)" ( (binary_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                        <= uVar5" (call_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" ( (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2" (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_" (cast_expression "(int)pOVar21->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb860;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000eb42c;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4)" * (cast_expression "(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->load_address_ + uVar5 * 4)" ( (binary_expression "*(int *)&pOVar21->load_address_ + uVar5 * 4" (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar5 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eb42c;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar14->calculate_only_;" (assignment_expression "bVar1 = pRVar14->calculate_only_" identifier = (field_expression "pRVar14->calculate_only_" identifier -> field_identifier)) ;) }) (else_clause "else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }" else (compound_statement "{\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }\nLAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;\n                  }" { (if_statement "if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }" if (parenthesized_expression "(uVar5 == 0xffff)" ( (binary_expression "uVar5 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar20 = *(int *)&pOVar21->entsize_;\n                      iStack_270 = iVar2;\n                      pRStack_27c = in_t1;\n                      pRStack_278 = pRVar12;\n                      pRStack_274 = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);\n                      iVar2 = iStack_270;\n                      in_t1 = pRStack_27c;\n                      pRVar12 = pRStack_278;\n                      pRVar14 = pRStack_274;\n                      goto LAB_000eb354;\n                    }" { (expression_statement "iVar20 = *(int *)&pOVar21->entsize_;" (assignment_expression "iVar20 = *(int *)&pOVar21->entsize_" identifier = (pointer_expression "*(int *)&pOVar21->entsize_" * (cast_expression "(int *)&pOVar21->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->entsize_" & (field_expression "pOVar21->entsize_" identifier -> field_identifier))))) ;) (expression_statement "iStack_270 = iVar2;" (assignment_expression "iStack_270 = iVar2" identifier = identifier) ;) (expression_statement "pRStack_27c = in_t1;" (assignment_expression "pRStack_27c = in_t1" identifier = identifier) ;) (expression_statement "pRStack_278 = pRVar12;" (assignment_expression "pRStack_278 = pRVar12" identifier = identifier) ;) (expression_statement "pRStack_274 = pRVar14;" (assignment_expression "pRStack_274 = pRVar14" identifier = identifier) ;) (if_statement "if (iVar20 == 0) {\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }" if (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);\n                        *(int *)&pOVar21->entsize_ = iVar20;\n                      }" { (expression_statement "iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);" (assignment_expression "iVar20 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21)" identifier = (call_expression "(*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21)" (parenthesized_expression "(*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar21->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar21->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar21->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar21)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar21->entsize_ = iVar20;" (assignment_expression "*(int *)&pOVar21->entsize_ = iVar20" (pointer_expression "*(int *)&pOVar21->entsize_" * (cast_expression "(int *)&pOVar21->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->entsize_" & (field_expression "pOVar21->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c);" (assignment_expression "uVar5 = (**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c)" identifier = (call_expression "(**(code **)(pcStack_290 + -0x7790))(iVar20,pOVar21,pRStack_27c)" (parenthesized_expression "(**(code **)(pcStack_290 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_290 + -0x7790)" * (pointer_expression "*(code **)(pcStack_290 + -0x7790)" * (cast_expression "(code **)(pcStack_290 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_290 + -0x7790)" ( (binary_expression "pcStack_290 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar20,pOVar21,pRStack_27c)" ( identifier , identifier , identifier )))) ;) (expression_statement "iVar2 = iStack_270;" (assignment_expression "iVar2 = iStack_270" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_27c;" (assignment_expression "in_t1 = pRStack_27c" identifier = identifier) ;) (expression_statement "pRVar12 = pRStack_278;" (assignment_expression "pRVar12 = pRStack_278" identifier = identifier) ;) (expression_statement "pRVar14 = pRStack_274;" (assignment_expression "pRVar14 = pRStack_274" identifier = identifier) ;) (goto_statement "goto LAB_000eb354;" goto statement_identifier ;) })) (labeled_statement "LAB_000eb278:\n                    bVar1 = pRVar14->calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar14->calculate_only_;" (assignment_expression "bVar1 = pRVar14->calculate_only_" identifier = (field_expression "pRVar14->calculate_only_" identifier -> field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_290;" (assignment_expression "pcVar35 = pcStack_290" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }\n                  else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    uStack_288 = CONCAT13(1,uStack_288._1_3_);\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }" { (expression_statement "pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "pRVar12 = (Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]" identifier = (cast_expression "(Relocate *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(pOVar21->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar21->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ]))) ;) (if_statement "if (pRVar12 == pRStack_280) {\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(pRVar12 == pRStack_280)" ( (binary_expression "pRVar12 == pRStack_280" identifier == identifier) )) (compound_statement "{\n                      if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;\n                      iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5) goto LAB_000eb840;" if (parenthesized_expression "((uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5)" ( (binary_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)\n                          <= uVar5" (call_expression "(uint)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)" ( (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2" (binary_expression "(int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_" (cast_expression "(int)pOVar21->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb840;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4)" * (cast_expression "(int *)(*(int *)&pOVar21->load_address_ + uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar21->load_address_ + uVar5 * 4)" ( (binary_expression "*(int *)&pOVar21->load_address_ + uVar5 * 4" (pointer_expression "*(int *)&pOVar21->load_address_" * (cast_expression "(int *)&pOVar21->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->load_address_" & (field_expression "pOVar21->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar5 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar5 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar5 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (*(code *)pRVar12)(pOVar21,uVar5);" (assignment_expression "iVar2 = (*(code *)pRVar12)(pOVar21,uVar5)" identifier = (call_expression "(*(code *)pRVar12)(pOVar21,uVar5)" (parenthesized_expression "(*(code *)pRVar12)" ( (pointer_expression "*(code *)pRVar12" * (cast_expression "(code *)pRVar12" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pOVar21,uVar5)" ( identifier , identifier )))) ;) (expression_statement "uVar5 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar5 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar5 & 0x7fffffff | 0x80000000" (binary_expression "uVar5 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_288 = CONCAT13(1,uStack_288._1_3_);" (assignment_expression "uStack_288 = CONCAT13(1,uStack_288._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_288._1_3_)" identifier (argument_list "(1,uStack_288._1_3_)" ( number_literal , (field_expression "uStack_288._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)pRVar26)(pRVar18,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar18,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar18,p_Var32)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }" else (compound_statement "{\n                    if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;\n                    piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }\n                    *piVar9 = -2;\n                    uStack_288 = uStack_288 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar18,p_Var32);\n                  }" { (if_statement "if ((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))\n                    goto LAB_000eb42c;" if (parenthesized_expression "((pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0))" ( (binary_expression "(pRVar12 == (Relocate *)0x0) && (in_t1 == (Relocate *)0x0)" (parenthesized_expression "(pRVar12 == (Relocate *)0x0)" ( (binary_expression "pRVar12 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(in_t1 == (Relocate *)0x0)" ( (binary_expression "in_t1 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000eb42c;" goto statement_identifier ;)) (expression_statement "piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2);" (assignment_expression "piVar9 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2)" identifier = (cast_expression "(int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2)" ( (binary_expression "(int)&pOVar21->free_space_fill_->_vptr_Output_fill + iVar2" (cast_expression "(int)&pOVar21->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar21->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar21->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar21->free_space_fill_" identifier -> field_identifier) -> field_identifier))) + identifier) )))) ;) (if_statement "if ((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1) goto LAB_000eb808;" if (parenthesized_expression "((Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1)" ( (binary_expression "(Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28) <= in_t1" (cast_expression "(Relocate *)\n                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28)" ( (binary_expression "(*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *\n                        (int)puVar28" (parenthesized_expression "(*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3)" ( (binary_expression "*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3" (binary_expression "*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_" (pointer_expression "*(int *)&pOVar21->field_0xec" * (cast_expression "(int *)&pOVar21->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar21->field_0xec" & (field_expression "pOVar21->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar21->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar21->free_space_fill_" identifier -> field_identifier))) >> number_literal) )) * (cast_expression "(int)puVar28" ( (type_descriptor "int" primitive_type) ) identifier)) ))) <= identifier) )) (goto_statement "goto LAB_000eb808;" goto statement_identifier ;)) (if_statement "if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }" if (parenthesized_expression "((*piVar9 != 0) && (*piVar9 != -2))" ( (binary_expression "(*piVar9 != 0) && (*piVar9 != -2)" (parenthesized_expression "(*piVar9 != 0)" ( (binary_expression "*piVar9 != 0" (pointer_expression "*piVar9" * identifier) != number_literal) )) && (parenthesized_expression "(*piVar9 != -2)" ( (binary_expression "*piVar9 != -2" (pointer_expression "*piVar9" * identifier) != number_literal) ))) )) (compound_statement "{\n                      uVar5 = *(uint *)(pcStack_290 + -0x77f0);\n                      pRVar12 = pRVar24;\nLAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);\n                      piVar9 = extraout_v1;\n                      pRVar24 = pRVar12;\n                    }" { (expression_statement "uVar5 = *(uint *)(pcStack_290 + -0x77f0);" (assignment_expression "uVar5 = *(uint *)(pcStack_290 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_290 + -0x77f0)" * (cast_expression "(uint *)(pcStack_290 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_290 + -0x77f0)" ( (binary_expression "pcStack_290 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = pRVar24;" (assignment_expression "pRVar12 = pRVar24" identifier = identifier) ;) (labeled_statement "LAB_000eb2d8:\n                      (**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);" statement_identifier : (expression_statement "(**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524);" (call_expression "(**(code **)(pcStack_290 + -0x7810))\n                                (*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524)" (parenthesized_expression "(**(code **)(pcStack_290 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_290 + -0x7810)" * (pointer_expression "*(code **)(pcStack_290 + -0x7810)" * (cast_expression "(code **)(pcStack_290 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_290 + -0x7810)" ( (binary_expression "pcStack_290 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_290 + -0x7fc4) + 0x4570,0x71f,uVar5 - 0x3524)" ( (binary_expression "*(uint *)(pcStack_290 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcStack_290 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_290 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_290 + -0x7fc4)" ( (binary_expression "pcStack_290 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar5 - 0x3524" identifier - number_literal) ))) ;)) (expression_statement "piVar9 = extraout_v1;" (assignment_expression "piVar9 = extraout_v1" identifier = identifier) ;) (expression_statement "pRVar24 = pRVar12;" (assignment_expression "pRVar24 = pRVar12" identifier = identifier) ;) })) (expression_statement "*piVar9 = -2;" (assignment_expression "*piVar9 = -2" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (expression_statement "uStack_288 = uStack_288 & 0xffffff;" (assignment_expression "uStack_288 = uStack_288 & 0xffffff" identifier = (binary_expression "uStack_288 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar18,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar18,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar18,p_Var32)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000eb20c;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0);" (call_expression "(**(code **)(pcStack_290 + -0x7810))\n                          (*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0)" (parenthesized_expression "(**(code **)(pcStack_290 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_290 + -0x7810)" * (pointer_expression "*(code **)(pcStack_290 + -0x7810)" * (cast_expression "(code **)(pcStack_290 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_290 + -0x7810)" ( (binary_expression "pcStack_290 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_290 + -0x77f0) - 0x41a0)" ( (binary_expression "*(uint *)(pcStack_290 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcStack_290 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_290 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_290 + -0x7fc4)" ( (binary_expression "pcStack_290 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcStack_290 + -0x77f0) - 0x41a0" (pointer_expression "*(uint *)(pcStack_290 + -0x77f0)" * (cast_expression "(uint *)(pcStack_290 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_290 + -0x77f0)" ( (binary_expression "pcStack_290 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000eb808:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                          (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar35 + -0x77f0) - 0x4128)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x4128" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4158)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x3588" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x4158" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000eb840:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x33a0)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x33a0" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "LAB_000eb85c:\n              uVar19 = *(uint *)(pcVar35 + -0x77f0);" statement_identifier : (expression_statement "uVar19 = *(uint *)(pcVar35 + -0x77f0);" (assignment_expression "uVar19 = *(uint *)(pcVar35 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000eb860:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,uVar19 - 0x34dc)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar19 - 0x34dc" identifier - number_literal) ))) ;)) (labeled_statement "LAB_000eb878:\n              (**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4170)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x4170" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "switchD_000eb69c_caseD_3:\n              pcVar31 = *(code **)(pcVar35 + -0x7810);" statement_identifier : (expression_statement "pcVar31 = *(code **)(pcVar35 + -0x7810);" (assignment_expression "pcVar31 = *(code **)(pcVar35 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar38 = Target_mips<64,_false>::emit_relocs_scan;" (comma_expression "pcVar38 = Target_mips<64,_false>::emit_relocs_scan" (assignment_expression "pcVar38 = Target_mips<64" identifier = (binary_expression "Target_mips<64" identifier < number_literal)) , (binary_expression "_false>::emit_relocs_scan" identifier > (ERROR "::" : :) identifier)) ;) (expression_statement "(*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188);" (call_expression "(*pcVar31)(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188)" (parenthesized_expression "(*pcVar31)" ( (pointer_expression "*pcVar31" * identifier) )) (argument_list "(*(uint *)(pcVar35 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar35 + -0x77f0) - 0x4188)" ( (binary_expression "*(uint *)(pcVar35 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar35 + -0x7fc4)" * (cast_expression "(uint *)(pcVar35 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar35 + -0x77f0) - 0x4188" (pointer_expression "*(uint *)(pcVar35 + -0x77f0)" * (cast_expression "(uint *)(pcVar35 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (expression_statement "pRVar14 = pRStack_278;" (assignment_expression "pRVar14 = pRStack_278" identifier = identifier) ;) (expression_statement "pRVar12 = pRStack_27c;" (assignment_expression "pRVar12 = pRStack_27c" identifier = identifier) ;) (expression_statement "pcVar35 = pcVar31 + 0x3dd990;" (assignment_expression "pcVar35 = pcVar31 + 0x3dd990" identifier = (binary_expression "pcVar31 + 0x3dd990" identifier + number_literal)) ;) (expression_statement "pRStack_2c4 = pRVar25;" (assignment_expression "pRStack_2c4 = pRVar25" identifier = identifier) ;) (expression_statement "pRStack_2cc = pRVar18;" (assignment_expression "pRStack_2cc = pRVar18" identifier = identifier) ;) (expression_statement "uVar5 = (uint)bStack_281;" (assignment_expression "uVar5 = (uint)bStack_281" identifier = (cast_expression "(uint)bStack_281" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pOVar23 = pOVar22;" (assignment_expression "pOVar23 = pOVar22" identifier = identifier) ;) (expression_statement "pcVar34 = pcStack_290;" (assignment_expression "pcVar34 = pcStack_290" identifier = identifier) ;) (expression_statement "pcStack_2f0 = pcVar35;" (assignment_expression "pcStack_2f0 = pcVar35" identifier = identifier) ;) (expression_statement "pcStack_2d0 = pcVar37;" (assignment_expression "pcStack_2d0 = pcVar37" identifier = identifier) ;) (expression_statement "pRStack_2c8 = pRVar26;" (assignment_expression "pRStack_2c8 = pRVar26" identifier = identifier) ;) (expression_statement "pOStack_2c0 = pOVar21;" (assignment_expression "pOStack_2c0 = pOVar21" identifier = identifier) ;) (expression_statement "pRStack_2bc = pRVar24;" (assignment_expression "pRStack_2bc = pRVar24" identifier = identifier) ;) (expression_statement "puStack_2b8 = puVar28;" (assignment_expression "puStack_2b8 = puVar28" identifier = identifier) ;) (expression_statement "uStack_2b4 = uVar7;" (assignment_expression "uStack_2b4 = uVar7" identifier = identifier) ;) (expression_statement "p_Stack_2b0 = p_Var32;" (assignment_expression "p_Stack_2b0 = p_Var32" identifier = identifier) ;) (expression_statement "pcStack_2ac = pcVar38;" (assignment_expression "pcStack_2ac = pcVar38" identifier = identifier) ;) (if_statement "if (iStack_294 == 9) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }" if (parenthesized_expression "(iStack_294 == 9)" ( (binary_expression "iStack_294 == 9" identifier == number_literal) )) (compound_statement "{\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }\nLAB_000ebaa8:\n                return SUB41(pRVar13,0);\n              }" { (expression_statement "pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);" (assignment_expression "pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d6274)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d6274)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d6274)" ( (binary_expression "pcVar31 + 0x3d6274" identifier + number_literal) ))))) ;) (expression_statement "pRVar13 = pRStack_2e0;" (assignment_expression "pRVar13 = pRStack_2e0" identifier = identifier) ;) (if_statement "if (pRStack_28c != (Relocate *)0x0) {\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }" if (parenthesized_expression "(pRStack_28c != (Relocate *)0x0)" ( (binary_expression "pRStack_28c != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                  pRVar26 = (Relocate *)0x0;\n                  puVar28 = &uStack_2e8;\n                  p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);\n                }" { (expression_statement "pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac);" (assignment_expression "pRVar24 = *(Relocate **)(pcVar31 + 0x3d62ac)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d62ac)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d62ac)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d62ac)" ( (binary_expression "pcVar31 + 0x3d62ac" identifier + number_literal) ))))) ;) (expression_statement "pRVar26 = (Relocate *)0x0;" (assignment_expression "pRVar26 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar28 = &uStack_2e8;" (assignment_expression "puVar28 = &uStack_2e8" identifier = (pointer_expression "&uStack_2e8" & identifier)) ;) (expression_statement "p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab;" (assignment_expression "p_Var32 = (_func_int_varargs *)&DAT_aaaaaaab" identifier = (cast_expression "(_func_int_varargs *)&DAT_aaaaaaab" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_aaaaaaab" & identifier))) ;) (do_statement "do {\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  } while (pRStack_28c != pRVar26);" do (compound_statement "{\n                    if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }\n                    pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);\n                    pcVar34 = pcVar34 + 0x10;\n                    pRVar13 = pRStack_28c;\n                  }" { (if_statement "if (uVar5 == 0) {\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }\n                    else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);\n                      pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                      if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }\n                      *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                    }" { (labeled_statement "LAB_000ebc34:\n                      uVar7 = *(uint *)(pcVar34 + 8);" statement_identifier : (expression_statement "uVar7 = *(uint *)(pcVar34 + 8);" (assignment_expression "uVar7 = *(uint *)(pcVar34 + 8)" identifier = (pointer_expression "*(uint *)(pcVar34 + 8)" * (cast_expression "(uint *)(pcVar34 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + 8)" ( (binary_expression "pcVar34 + 8" identifier + number_literal) ))))) ;)) (expression_statement "pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRVar13 = (Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                                ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (if_statement "if (pRVar13 < pRStack_280) {\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }\n                      else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }" if (parenthesized_expression "(pRVar13 < pRStack_280)" ( (binary_expression "pRVar13 < pRStack_280" identifier < identifier) )) (compound_statement "{\n                        pcVar35 = pcStack_2f0;\n                        if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;\n                        iVar2 = (int)pRVar13 * 0x18;\n                        pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                        uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                        if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        pcVar35 = pcStack_2f0;\n                        if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                      }" { (expression_statement "pcVar35 = pcStack_2f0;" (assignment_expression "pcVar35 = pcStack_2f0" identifier = identifier) ;) (if_statement "if (pRVar12 == (Relocate *)0x0) goto LAB_000ebf20;" if (parenthesized_expression "(pRVar12 == (Relocate *)0x0)" ( (binary_expression "pRVar12 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ebf20;" goto statement_identifier ;)) (expression_statement "iVar2 = (int)pRVar13 * 0x18;" (assignment_expression "iVar2 = (int)pRVar13 * 0x18" identifier = (binary_expression "(int)pRVar13 * 0x18" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pRVar25 = pRVar12 + (int)pRVar13 * 3;" (assignment_expression "pRVar25 = pRVar12 + (int)pRVar13 * 3" identifier = (binary_expression "pRVar12 + (int)pRVar13 * 3" identifier + (binary_expression "(int)pRVar13 * 3" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);" (assignment_expression "uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8)" identifier = (binary_expression "(*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                                (uint)(*(ushort *)&pRVar25->field_0x6 >> 8)" (binary_expression "(*(ushort *)&pRVar25->field_0x6 & 0xff) << 8" (parenthesized_expression "(*(ushort *)&pRVar25->field_0x6 & 0xff)" ( (binary_expression "*(ushort *)&pRVar25->field_0x6 & 0xff" (pointer_expression "*(ushort *)&pRVar25->field_0x6" * (cast_expression "(ushort *)&pRVar25->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25->field_0x6" & (field_expression "pRVar25->field_0x6" identifier -> field_identifier)))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)&pRVar25->field_0x6 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)&pRVar25->field_0x6 >> 8)" ( (binary_expression "*(ushort *)&pRVar25->field_0x6 >> 8" (pointer_expression "*(ushort *)&pRVar25->field_0x6" * (cast_expression "(ushort *)&pRVar25->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25->field_0x6" & (field_expression "pRVar25->field_0x6" identifier -> field_identifier)))) >> number_literal) ))))) ;) (if_statement "if (uVar7 < 0xff00) {\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }\n                        else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }" if (parenthesized_expression "(uVar7 < 0xff00)" ( (binary_expression "uVar7 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;\n                          iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                          pcVar35 = pcStack_2f0;\n                          if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;\n                          if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;\n                          bVar1 = pRVar25->calculate_only_;\n                        }" { (labeled_statement "LAB_000ebd98:\n                          if (uVar7 == 0) goto LAB_000ebc8c;" statement_identifier : (if_statement "if (uVar7 == 0) goto LAB_000ebc8c;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000ebc8c;" goto statement_identifier ;))) (expression_statement "iVar20 = *(int *)(pcStack_2f0 + -0x77f0);" (assignment_expression "iVar20 = *(int *)(pcStack_2f0 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_2f0 + -0x77f0)" * (cast_expression "(int *)(pcStack_2f0 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_2f0 + -0x77f0)" ( (binary_expression "pcStack_2f0 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = pcStack_2f0;" (assignment_expression "pcVar35 = pcStack_2f0" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7) goto LAB_000ebf3c;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2) <= uVar7" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                    >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ebf3c;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                          goto LAB_000ebd40;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ebd40;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar25->calculate_only_;" (assignment_expression "bVar1 = pRVar25->calculate_only_" identifier = (field_expression "pRVar25->calculate_only_" identifier -> field_identifier)) ;) }) (else_clause "else {\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }" else (compound_statement "{\n                          if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }\nLAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;\n                        }" { (if_statement "if (uVar7 == 0xffff) {\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }" if (parenthesized_expression "(uVar7 == 0xffff)" ( (binary_expression "uVar7 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                            iVar20 = *(int *)&pOVar22->entsize_;\n                            pRStack_2dc = pRVar13;\n                            iStack_2d4 = iVar2;\n                            pRStack_2d8 = pRVar25;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }\n                            uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;\n                            pRVar13 = pRStack_2dc;\n                            iVar2 = iStack_2d4;\n                            pRVar25 = pRStack_2d8;\n                            goto LAB_000ebd98;\n                          }" { (expression_statement "iVar20 = *(int *)&pOVar22->entsize_;" (assignment_expression "iVar20 = *(int *)&pOVar22->entsize_" identifier = (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_2dc = pRVar13;" (assignment_expression "pRStack_2dc = pRVar13" identifier = identifier) ;) (expression_statement "iStack_2d4 = iVar2;" (assignment_expression "iStack_2d4 = iVar2" identifier = identifier) ;) (expression_statement "pRStack_2d8 = pRVar25;" (assignment_expression "pRStack_2d8 = pRVar25" identifier = identifier) ;) (if_statement "if (iVar20 == 0) {\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }" if (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);\n                              *(int *)&pOVar22->entsize_ = iVar20;\n                            }" { (expression_statement "iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22);" (assignment_expression "iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22)" identifier = (call_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar22)" (parenthesized_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar22)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar22->entsize_ = iVar20;" (assignment_expression "*(int *)&pOVar22->entsize_ = iVar20" (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)\n                            ;" (assignment_expression "uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)" identifier = (call_expression "(**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)" (parenthesized_expression "(**(code **)(pcStack_2f0 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_2f0 + -0x7790)" * (pointer_expression "*(code **)(pcStack_2f0 + -0x7790)" * (cast_expression "(code **)(pcStack_2f0 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_2f0 + -0x7790)" ( (binary_expression "pcStack_2f0 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar20,pOVar22,pRStack_2dc)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar13 = pRStack_2dc;" (assignment_expression "pRVar13 = pRStack_2dc" identifier = identifier) ;) (expression_statement "iVar2 = iStack_2d4;" (assignment_expression "iVar2 = iStack_2d4" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_2d8;" (assignment_expression "pRVar25 = pRStack_2d8" identifier = identifier) ;) (goto_statement "goto LAB_000ebd98;" goto statement_identifier ;) })) (labeled_statement "LAB_000ebc8c:\n                          bVar1 = pRVar25->calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar25->calculate_only_;" (assignment_expression "bVar1 = pRVar25->calculate_only_" identifier = (field_expression "pRVar25->calculate_only_" identifier -> field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_2f0;" (assignment_expression "pcVar35 = pcStack_2f0" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }\n                        else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                          pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;\n                          if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                          uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }" { (expression_statement "pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]\n                          ;" (assignment_expression "pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]" identifier = (cast_expression "(Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ]))) ;) (if_statement "if (pRVar13 == pRStack_2e0) {\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" if (parenthesized_expression "(pRVar13 == pRStack_2e0)" ( (binary_expression "pRVar13 == pRStack_2e0" identifier == identifier) )) (compound_statement "{\n                            if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;\n                            iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" { (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7) goto LAB_000ebee8;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2) <= uVar7" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_\n                                      >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ebee8;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" else (compound_statement "{\n                            iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                            uVar7 = *(uint *)(iVar2 + 0x98);\n                          }" { (expression_statement "iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);" (assignment_expression "iVar2 = (*(code *)pRVar13)(pOVar22,uVar7)" identifier = (call_expression "(*(code *)pRVar13)(pOVar22,uVar7)" (parenthesized_expression "(*(code *)pRVar13)" ( (pointer_expression "*(code *)pRVar13" * (cast_expression "(code *)pRVar13" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pOVar22,uVar7)" ( identifier , identifier )))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar7 & 0x7fffffff | 0x80000000" (binary_expression "uVar7 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_);" (assignment_expression "uStack_2e8 = CONCAT13(2,uStack_2e8._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_2e8._1_3_)" identifier (argument_list "(2,uStack_2e8._1_3_)" ( number_literal , (field_expression "uStack_2e8._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)pRVar24)(pRVar14,puVar28);" (call_expression "(*(code *)pRVar24)(pRVar14,puVar28)" (parenthesized_expression "(*(code *)pRVar24)" ( (pointer_expression "*(code *)pRVar24" * (cast_expression "(code *)pRVar24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar14,puVar28)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }" else (compound_statement "{\n                          piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;\n                          iVar2 = *piVar9;\n                          if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;\n                          *piVar9 = -2;\n                          uStack_2e8 = uStack_2e8 & 0xffffff;\n                          (*(code *)pRVar24)(pRVar14,puVar28);\n                        }" { (expression_statement "piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);" (assignment_expression "piVar9 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2)" identifier = (cast_expression "(int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2)" ( (binary_expression "(int)&pOVar22->free_space_fill_->_vptr_Output_fill +\n                                          iVar2" (cast_expression "(int)&pOVar22->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar22->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar22->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier) -> field_identifier))) + identifier) )))) ;) (if_statement "if ((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13) goto LAB_000ebecc;" if (parenthesized_expression "((Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13)" ( (binary_expression "(Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555) <= pRVar13" (cast_expression "(Relocate *)\n                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555)" ( (binary_expression "(*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)\n                              * -0x55555555" (parenthesized_expression "(*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)" ( (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3" (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_" (pointer_expression "*(int *)&pOVar22->field_0xec" * (cast_expression "(int *)&pOVar22->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->field_0xec" & (field_expression "pOVar22->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar22->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier))) >> number_literal) )) * number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ebecc;" goto statement_identifier ;)) (expression_statement "iVar2 = *piVar9;" (assignment_expression "iVar2 = *piVar9" identifier = (pointer_expression "*piVar9" * identifier)) ;) (if_statement "if ((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ebb10;" if (parenthesized_expression "((iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2))" ( (binary_expression "(iVar2 != 0) &&\n                             (iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2)" ( (comma_expression "iVar20 = *(int *)(pcStack_2f0 + -0x77f0), iVar2 != -2" (assignment_expression "iVar20 = *(int *)(pcStack_2f0 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_2f0 + -0x77f0)" * (cast_expression "(int *)(pcStack_2f0 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_2f0 + -0x77f0)" ( (binary_expression "pcStack_2f0 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "iVar2 != -2" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000ebb10;" goto statement_identifier ;)) (expression_statement "*piVar9 = -2;" (assignment_expression "*piVar9 = -2" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (expression_statement "uStack_2e8 = uStack_2e8 & 0xffffff;" (assignment_expression "uStack_2e8 = uStack_2e8 & 0xffffff" identifier = (binary_expression "uStack_2e8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar24)(pRVar14,puVar28);" (call_expression "(*(code *)pRVar24)(pRVar14,puVar28)" (parenthesized_expression "(*(code *)pRVar24)" ( (pointer_expression "*(code *)pRVar24" * (cast_expression "(code *)pRVar24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar14,puVar28)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }" else (compound_statement "{\n                        uStack_2e8 = uStack_2e8 & 0xffffff;\n                        (*(code *)pRVar24)(pRVar14,puVar28);\n                      }" { (expression_statement "uStack_2e8 = uStack_2e8 & 0xffffff;" (assignment_expression "uStack_2e8 = uStack_2e8 & 0xffffff" identifier = (binary_expression "uStack_2e8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar24)(pRVar14,puVar28);" (call_expression "(*(code *)pRVar24)(pRVar14,puVar28)" (parenthesized_expression "(*(code *)pRVar24)" ( (pointer_expression "*(code *)pRVar24" * (cast_expression "(code *)pRVar24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar14,puVar28)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;" (assignment_expression "*(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar14[1].calculate_only_" * (cast_expression "(int *)&pRVar14[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14[1].calculate_only_" & (field_expression "pRVar14[1].calculate_only_" (subscript_expression "pRVar14[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "*(int *)&pRVar14[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar14[1].calculate_only_" * (cast_expression "(int *)&pRVar14[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14[1].calculate_only_" & (field_expression "pRVar14[1].calculate_only_" (subscript_expression "pRVar14[1]" identifier [ number_literal ]) . field_identifier)))) + number_literal)) ;) }) (else_clause "else {\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }" else (compound_statement "{\n                      uVar19 = *(uint *)pcVar34;\n                      uVar7 = *(uint *)(pcVar34 + 4);\n                      pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                      iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                      if (iVar2 != 0) goto LAB_000ebc34;\nLAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                      (*(code *)pRVar24)(pRVar14,puVar28);\n                    }" { (expression_statement "uVar19 = *(uint *)pcVar34;" (assignment_expression "uVar19 = *(uint *)pcVar34" identifier = (pointer_expression "*(uint *)pcVar34" * (cast_expression "(uint *)pcVar34" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar7 = *(uint *)(pcVar34 + 4);" (assignment_expression "uVar7 = *(uint *)(pcVar34 + 4)" identifier = (pointer_expression "*(uint *)(pcVar34 + 4)" * (cast_expression "(uint *)(pcVar34 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + 4)" ( (binary_expression "pcVar34 + 4" identifier + number_literal) ))))) ;) (expression_statement "pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRStack_2f4 = (Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                                    ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)\n                                    + ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10)" ( (binary_expression "(uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10" (binary_expression "(uVar19 >> 0x10) << 0x18" (parenthesized_expression "(uVar19 >> 0x10)" ( (binary_expression "uVar19 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar19 >> 0x18) << 0x10" (parenthesized_expression "(uVar19 >> 0x18)" ( (binary_expression "uVar19 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff)" ( (binary_expression "(uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff" (binary_expression "(uVar19 & 0xff) << 8" (parenthesized_expression "(uVar19 & 0xff)" ( (binary_expression "uVar19 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 >> 8 & 0xff" (binary_expression "uVar19 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);" (assignment_expression "iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298)" identifier = (call_expression "(**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298)" (parenthesized_expression "(**(code **)(pcStack_2f0 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_2f0 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_2f0 + -0x76e0)" * (cast_expression "(code **)(pcStack_2f0 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_2f0 + -0x76e0)" ( (binary_expression "pcStack_2f0 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_288,pOVar22,uStack_298)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000ebc34;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ebc34;" goto statement_identifier ;)) (labeled_statement "LAB_000ebd40:\n                      uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);" statement_identifier : (expression_statement "uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);" (assignment_expression "uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_2e8._1_3_)" identifier (argument_list "(8,uStack_2e8._1_3_)" ( number_literal , (field_expression "uStack_2e8._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)pRVar24)(pRVar14,puVar28);" (call_expression "(*(code *)pRVar24)(pRVar14,puVar28)" (parenthesized_expression "(*(code *)pRVar24)" ( (pointer_expression "*(code *)pRVar24" * (cast_expression "(code *)pRVar24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar14,puVar28)" ( identifier , identifier ))) ;) }))) (expression_statement "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1);" (assignment_expression "pRVar26 = (Relocate *)((int)&pRVar26->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar26->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar26->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar26->calculated_value_ + 1" (cast_expression "(int)&pRVar26->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar26->calculated_value_" & (field_expression "pRVar26->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar34 = pcVar34 + 0x10;" (assignment_expression "pcVar34 = pcVar34 + 0x10" identifier = (binary_expression "pcVar34 + 0x10" identifier + number_literal)) ;) (expression_statement "pRVar13 = pRStack_28c;" (assignment_expression "pRVar13 = pRStack_28c" identifier = identifier) ;) }) while (parenthesized_expression "(pRStack_28c != pRVar26)" ( (binary_expression "pRStack_28c != pRVar26" identifier != identifier) )) ;) })) (labeled_statement "LAB_000ebaa8:\n                return SUB41(pRVar13,0);" statement_identifier : (return_statement "return SUB41(pRVar13,0);" return (call_expression "SUB41(pRVar13,0)" identifier (argument_list "(pRVar13,0)" ( identifier , number_literal ))) ;)) })) (if_statement "if (iStack_294 == 4) {\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }" if (parenthesized_expression "(iStack_294 == 4)" ( (binary_expression "iStack_294 == 4" identifier == number_literal) )) (compound_statement "{\n                pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);\n                pRVar13 = pRStack_2e0;\n                if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;\n                pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);\n                pRVar24 = (Relocate *)0x0;\n                p_Var32 = (_func_int_varargs *)&uStack_2e8;\n                puVar28 = (uint *)&DAT_aaaaaaab;\nLAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\nLAB_000eb974:\n                pcVar35 = pcStack_2f0;\n                uVar7 = *(uint *)(pcVar34 + 8);\n                pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);\n                if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }\n                if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }\n                (**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);\nLAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);\nLAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);\n              }" { (expression_statement "pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274);" (assignment_expression "pRStack_2e0 = *(Relocate **)(pcVar31 + 0x3d6274)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d6274)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d6274)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d6274)" ( (binary_expression "pcVar31 + 0x3d6274" identifier + number_literal) ))))) ;) (expression_statement "pRVar13 = pRStack_2e0;" (assignment_expression "pRVar13 = pRStack_2e0" identifier = identifier) ;) (if_statement "if (pRStack_28c == (Relocate *)0x0) goto LAB_000ebaa8;" if (parenthesized_expression "(pRStack_28c == (Relocate *)0x0)" ( (binary_expression "pRStack_28c == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ebaa8;" goto statement_identifier ;)) (expression_statement "pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac);" (assignment_expression "pRVar26 = *(Relocate **)(pcVar31 + 0x3d62ac)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d62ac)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d62ac)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d62ac)" ( (binary_expression "pcVar31 + 0x3d62ac" identifier + number_literal) ))))) ;) (expression_statement "pRVar24 = (Relocate *)0x0;" (assignment_expression "pRVar24 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var32 = (_func_int_varargs *)&uStack_2e8;" (assignment_expression "p_Var32 = (_func_int_varargs *)&uStack_2e8" identifier = (cast_expression "(_func_int_varargs *)&uStack_2e8" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_2e8" & identifier))) ;) (expression_statement "puVar28 = (uint *)&DAT_aaaaaaab;" (assignment_expression "puVar28 = (uint *)&DAT_aaaaaaab" identifier = (cast_expression "(uint *)&DAT_aaaaaaab" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_aaaaaaab" & identifier))) ;) (labeled_statement "LAB_000eb96c:\n                if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }" statement_identifier : (if_statement "if (uVar5 != 0) {\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n                  uVar19 = *(uint *)pcVar34;\n                  uVar7 = *(uint *)(pcVar34 + 4);\n                  pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);\n                  iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);\n                  if (iVar2 != 0) goto LAB_000eb974;\nLAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }" { (expression_statement "uVar19 = *(uint *)pcVar34;" (assignment_expression "uVar19 = *(uint *)pcVar34" identifier = (pointer_expression "*(uint *)pcVar34" * (cast_expression "(uint *)pcVar34" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar7 = *(uint *)(pcVar34 + 4);" (assignment_expression "uVar7 = *(uint *)(pcVar34 + 4)" identifier = (pointer_expression "*(uint *)(pcVar34 + 4)" * (cast_expression "(uint *)(pcVar34 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + 4)" ( (binary_expression "pcVar34 + 4" identifier + number_literal) ))))) ;) (expression_statement "pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRStack_2f4 = (Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                                ((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10)" ( (binary_expression "(uVar19 >> 0x10) << 0x18 | (uVar19 >> 0x18) << 0x10" (binary_expression "(uVar19 >> 0x10) << 0x18" (parenthesized_expression "(uVar19 >> 0x10)" ( (binary_expression "uVar19 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar19 >> 0x18) << 0x10" (parenthesized_expression "(uVar19 >> 0x18)" ( (binary_expression "uVar19 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff)" ( (binary_expression "(uVar19 & 0xff) << 8 | uVar19 >> 8 & 0xff" (binary_expression "(uVar19 & 0xff) << 8" (parenthesized_expression "(uVar19 & 0xff)" ( (binary_expression "uVar19 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 >> 8 & 0xff" (binary_expression "uVar19 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_2f8 = (((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298);" (assignment_expression "iVar2 = (**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298)" identifier = (call_expression "(**(code **)(pcStack_2f0 + -0x76e0))(uStack_288,pOVar22,uStack_298)" (parenthesized_expression "(**(code **)(pcStack_2f0 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_2f0 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_2f0 + -0x76e0)" * (cast_expression "(code **)(pcStack_2f0 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_2f0 + -0x76e0)" ( (binary_expression "pcStack_2f0 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_288,pOVar22,uStack_298)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000eb974;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000eb974;" goto statement_identifier ;)) (labeled_statement "LAB_000eba7c:\n                  uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);" statement_identifier : (expression_statement "uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_);" (assignment_expression "uStack_2e8 = CONCAT13(8,uStack_2e8._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_2e8._1_3_)" identifier (argument_list "(8,uStack_2e8._1_3_)" ( number_literal , (field_expression "uStack_2e8._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)pRVar26)(pRVar14,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar14,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar14,p_Var32)" ( identifier , identifier ))) ;) (expression_statement "pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);" (assignment_expression "pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar24->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar24->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar24->calculated_value_ + 1" (cast_expression "(int)&pRVar24->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar24->calculated_value_" & (field_expression "pRVar24->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar34 = pcVar34 + 0x18;" (assignment_expression "pcVar34 = pcVar34 + 0x18" identifier = (binary_expression "pcVar34 + 0x18" identifier + number_literal)) ;) (expression_statement "pRVar13 = pRStack_28c;" (assignment_expression "pRVar13 = pRStack_28c" identifier = identifier) ;) (if_statement "if (pRStack_28c == pRVar24) goto LAB_000ebaa8;" if (parenthesized_expression "(pRStack_28c == pRVar24)" ( (binary_expression "pRStack_28c == pRVar24" identifier == identifier) )) (goto_statement "goto LAB_000ebaa8;" goto statement_identifier ;)) (goto_statement "goto LAB_000eb96c;" goto statement_identifier ;) }))) (labeled_statement "LAB_000eb974:\n                pcVar35 = pcStack_2f0;" statement_identifier : (expression_statement "pcVar35 = pcStack_2f0;" (assignment_expression "pcVar35 = pcStack_2f0" identifier = identifier) ;)) (expression_statement "uVar7 = *(uint *)(pcVar34 + 8);" (assignment_expression "uVar7 = *(uint *)(pcVar34 + 8)" identifier = (pointer_expression "*(uint *)(pcVar34 + 8)" * (cast_expression "(uint *)(pcVar34 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + 8)" ( (binary_expression "pcVar34 + 8" identifier + number_literal) ))))) ;) (expression_statement "pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRVar13 = (Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                          ((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10)" ( (binary_expression "(uVar7 >> 0x10) << 0x18 | (uVar7 >> 0x18) << 0x10" (binary_expression "(uVar7 >> 0x10) << 0x18" (parenthesized_expression "(uVar7 >> 0x10)" ( (binary_expression "uVar7 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar7 >> 0x18) << 0x10" (parenthesized_expression "(uVar7 >> 0x18)" ( (binary_expression "uVar7 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff)" ( (binary_expression "(uVar7 & 0xff) << 8 | uVar7 >> 8 & 0xff" (binary_expression "(uVar7 & 0xff) << 8" (parenthesized_expression "(uVar7 & 0xff)" ( (binary_expression "uVar7 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar7 >> 8 & 0xff" (binary_expression "uVar7 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (if_statement "if (pRStack_280 <= pRVar13) {\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }" if (parenthesized_expression "(pRStack_280 <= pRVar13)" ( (binary_expression "pRStack_280 <= pRVar13" identifier <= identifier) )) (compound_statement "{\n                  uStack_2e8 = uStack_2e8 & 0xffffff;\n                  (*(code *)pRVar26)(pRVar14,p_Var32);\nLAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);\n                  *(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;\n                  pcVar34 = pcVar34 + 0x18;\n                  pRVar13 = pRStack_28c;\n                  if (pRStack_28c == pRVar24) goto LAB_000ebaa8;\n                  goto LAB_000eb96c;\n                }" { (expression_statement "uStack_2e8 = uStack_2e8 & 0xffffff;" (assignment_expression "uStack_2e8 = uStack_2e8 & 0xffffff" identifier = (binary_expression "uStack_2e8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar14,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar14,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar14,p_Var32)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000eb950:\n                  pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);" statement_identifier : (expression_statement "pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1);" (assignment_expression "pRVar24 = (Relocate *)((int)&pRVar24->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&pRVar24->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pRVar24->calculated_value_ + 1)" ( (binary_expression "(int)&pRVar24->calculated_value_ + 1" (cast_expression "(int)&pRVar24->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pRVar24->calculated_value_" & (field_expression "pRVar24->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "*(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1;" (assignment_expression "*(int *)&pRVar14[1].calculate_only_ = *(int *)&pRVar14[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar14[1].calculate_only_" * (cast_expression "(int *)&pRVar14[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14[1].calculate_only_" & (field_expression "pRVar14[1].calculate_only_" (subscript_expression "pRVar14[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "*(int *)&pRVar14[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar14[1].calculate_only_" * (cast_expression "(int *)&pRVar14[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14[1].calculate_only_" & (field_expression "pRVar14[1].calculate_only_" (subscript_expression "pRVar14[1]" identifier [ number_literal ]) . field_identifier)))) + number_literal)) ;) (expression_statement "pcVar34 = pcVar34 + 0x18;" (assignment_expression "pcVar34 = pcVar34 + 0x18" identifier = (binary_expression "pcVar34 + 0x18" identifier + number_literal)) ;) (expression_statement "pRVar13 = pRStack_28c;" (assignment_expression "pRVar13 = pRStack_28c" identifier = identifier) ;) (if_statement "if (pRStack_28c == pRVar24) goto LAB_000ebaa8;" if (parenthesized_expression "(pRStack_28c == pRVar24)" ( (binary_expression "pRStack_28c == pRVar24" identifier == identifier) )) (goto_statement "goto LAB_000ebaa8;" goto statement_identifier ;)) (goto_statement "goto LAB_000eb96c;" goto statement_identifier ;) })) (if_statement "if (pRVar12 != (Relocate *)0x0) {\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }" if (parenthesized_expression "(pRVar12 != (Relocate *)0x0)" ( (binary_expression "pRVar12 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  iVar2 = (int)pRVar13 * 0x18;\n                  pRVar25 = pRVar12 + (int)pRVar13 * 3;\n                  uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);\n                  if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  pcVar35 = pcStack_2f0;\n                  if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  goto LAB_000eb950;\n                }" { (expression_statement "iVar2 = (int)pRVar13 * 0x18;" (assignment_expression "iVar2 = (int)pRVar13 * 0x18" identifier = (binary_expression "(int)pRVar13 * 0x18" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pRVar25 = pRVar12 + (int)pRVar13 * 3;" (assignment_expression "pRVar25 = pRVar12 + (int)pRVar13 * 3" identifier = (binary_expression "pRVar12 + (int)pRVar13 * 3" identifier + (binary_expression "(int)pRVar13 * 3" (cast_expression "(int)pRVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8);" (assignment_expression "uVar7 = (*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8)" identifier = (binary_expression "(*(ushort *)&pRVar25->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar25->field_0x6 >> 8)" (binary_expression "(*(ushort *)&pRVar25->field_0x6 & 0xff) << 8" (parenthesized_expression "(*(ushort *)&pRVar25->field_0x6 & 0xff)" ( (binary_expression "*(ushort *)&pRVar25->field_0x6 & 0xff" (pointer_expression "*(ushort *)&pRVar25->field_0x6" * (cast_expression "(ushort *)&pRVar25->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25->field_0x6" & (field_expression "pRVar25->field_0x6" identifier -> field_identifier)))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)&pRVar25->field_0x6 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)&pRVar25->field_0x6 >> 8)" ( (binary_expression "*(ushort *)&pRVar25->field_0x6 >> 8" (pointer_expression "*(ushort *)&pRVar25->field_0x6" * (cast_expression "(ushort *)&pRVar25->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar25->field_0x6" & (field_expression "pRVar25->field_0x6" identifier -> field_identifier)))) >> number_literal) ))))) ;) (if_statement "if (uVar7 < 0xff00) {\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }\n                  else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }" if (parenthesized_expression "(uVar7 < 0xff00)" ( (binary_expression "uVar7 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;\n                    iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\n                    pcVar35 = pcStack_2f0;\n                    if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;\n                    if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;\n                    bVar1 = pRVar25->calculate_only_;\n                  }" { (labeled_statement "LAB_000ebb84:\n                    if (uVar7 == 0) goto LAB_000eb9cc;" statement_identifier : (if_statement "if (uVar7 == 0) goto LAB_000eb9cc;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eb9cc;" goto statement_identifier ;))) (expression_statement "iVar20 = *(int *)(pcStack_2f0 + -0x77f0);" (assignment_expression "iVar20 = *(int *)(pcStack_2f0 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_2f0 + -0x77f0)" * (cast_expression "(int *)(pcStack_2f0 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_2f0 + -0x77f0)" ( (binary_expression "pcStack_2f0 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar35 = pcStack_2f0;" (assignment_expression "pcVar35 = pcStack_2f0" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7) goto LAB_000ebf3c;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                        <= uVar7" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ebf3c;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                    goto LAB_000eba7c;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eba7c;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar25->calculate_only_;" (assignment_expression "bVar1 = pRVar25->calculate_only_" identifier = (field_expression "pRVar25->calculate_only_" identifier -> field_identifier)) ;) }) (else_clause "else {\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }" else (compound_statement "{\n                    if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }\nLAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;\n                  }" { (if_statement "if (uVar7 == 0xffff) {\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }" if (parenthesized_expression "(uVar7 == 0xffff)" ( (binary_expression "uVar7 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar20 = *(int *)&pOVar22->entsize_;\n                      pRStack_2dc = pRVar13;\n                      iStack_2d4 = iVar2;\n                      pRStack_2d8 = pRVar25;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }\n                      uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);\n                      pRVar13 = pRStack_2dc;\n                      iVar2 = iStack_2d4;\n                      pRVar25 = pRStack_2d8;\n                      goto LAB_000ebb84;\n                    }" { (expression_statement "iVar20 = *(int *)&pOVar22->entsize_;" (assignment_expression "iVar20 = *(int *)&pOVar22->entsize_" identifier = (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_2dc = pRVar13;" (assignment_expression "pRStack_2dc = pRVar13" identifier = identifier) ;) (expression_statement "iStack_2d4 = iVar2;" (assignment_expression "iStack_2d4 = iVar2" identifier = identifier) ;) (expression_statement "pRStack_2d8 = pRVar25;" (assignment_expression "pRStack_2d8 = pRVar25" identifier = identifier) ;) (if_statement "if (iVar20 == 0) {\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }" if (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                        *(int *)&pOVar22->entsize_ = iVar20;\n                      }" { (expression_statement "iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);" (assignment_expression "iVar20 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22)" identifier = (call_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22)" (parenthesized_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar22)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar22->entsize_ = iVar20;" (assignment_expression "*(int *)&pOVar22->entsize_ = iVar20" (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc);" (assignment_expression "uVar7 = (**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)" identifier = (call_expression "(**(code **)(pcStack_2f0 + -0x7790))(iVar20,pOVar22,pRStack_2dc)" (parenthesized_expression "(**(code **)(pcStack_2f0 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_2f0 + -0x7790)" * (pointer_expression "*(code **)(pcStack_2f0 + -0x7790)" * (cast_expression "(code **)(pcStack_2f0 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_2f0 + -0x7790)" ( (binary_expression "pcStack_2f0 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar20,pOVar22,pRStack_2dc)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar13 = pRStack_2dc;" (assignment_expression "pRVar13 = pRStack_2dc" identifier = identifier) ;) (expression_statement "iVar2 = iStack_2d4;" (assignment_expression "iVar2 = iStack_2d4" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_2d8;" (assignment_expression "pRVar25 = pRStack_2d8" identifier = identifier) ;) (goto_statement "goto LAB_000ebb84;" goto statement_identifier ;) })) (labeled_statement "LAB_000eb9cc:\n                    bVar1 = pRVar25->calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar25->calculate_only_;" (assignment_expression "bVar1 = pRVar25->calculate_only_" identifier = (field_expression "pRVar25->calculate_only_" identifier -> field_identifier)) ;)) }))) (expression_statement "pcVar35 = pcStack_2f0;" (assignment_expression "pcVar35 = pcStack_2f0" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) == 3) {\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }\n                  else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }" { (expression_statement "pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "pRVar13 = (Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]" identifier = (cast_expression "(Relocate *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ]))) ;) (if_statement "if (pRVar13 == pRStack_2e0) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(pRVar13 == pRStack_2e0)" ( (binary_expression "pRVar13 == pRStack_2e0" identifier == identifier) )) (compound_statement "{\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000ebee8;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ebee8;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (*(code *)pRVar13)(pOVar22,uVar7);" (assignment_expression "iVar2 = (*(code *)pRVar13)(pOVar22,uVar7)" identifier = (call_expression "(*(code *)pRVar13)(pOVar22,uVar7)" (parenthesized_expression "(*(code *)pRVar13)" ( (pointer_expression "*(code *)pRVar13" * (cast_expression "(code *)pRVar13" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pOVar22,uVar7)" ( identifier , identifier )))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar7 & 0x7fffffff | 0x80000000" (binary_expression "uVar7 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_);" (assignment_expression "uStack_2e8 = CONCAT13(1,uStack_2e8._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_2e8._1_3_)" identifier (argument_list "(1,uStack_2e8._1_3_)" ( number_literal , (field_expression "uStack_2e8._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)pRVar26)(pRVar14,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar14,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar14,p_Var32)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }" else (compound_statement "{\n                    in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;\n                    if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;\n                    if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }\n                    in_t1->calculated_value_ = 0xfffffffe;\n                    uStack_2e8 = uStack_2e8 & 0xffffff;\n                    (*(code *)pRVar26)(pRVar14,p_Var32);\n                  }" { (expression_statement "in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)\n                    ;" (assignment_expression "in_t1 = (Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)" identifier = (cast_expression "(Relocate *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2)" ( (binary_expression "(int)&pOVar22->free_space_fill_->_vptr_Output_fill + iVar2" (cast_expression "(int)&pOVar22->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar22->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar22->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier) -> field_identifier))) + identifier) )))) ;) (if_statement "if ((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13) goto LAB_000ebecc;" if (parenthesized_expression "((Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13)" ( (binary_expression "(Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28) <= pRVar13" (cast_expression "(Relocate *)\n                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28)" ( (binary_expression "(*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *\n                        (int)puVar28" (parenthesized_expression "(*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)" ( (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3" (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_" (pointer_expression "*(int *)&pOVar22->field_0xec" * (cast_expression "(int *)&pOVar22->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->field_0xec" & (field_expression "pOVar22->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar22->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier))) >> number_literal) )) * (cast_expression "(int)puVar28" ( (type_descriptor "int" primitive_type) ) identifier)) ))) <= identifier) )) (goto_statement "goto LAB_000ebecc;" goto statement_identifier ;)) (if_statement "if ((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))\n                    {\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }" if (parenthesized_expression "((in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe))" ( (binary_expression "(in_t1->calculated_value_ != 0) && (in_t1->calculated_value_ != 0xfffffffe)" (parenthesized_expression "(in_t1->calculated_value_ != 0)" ( (binary_expression "in_t1->calculated_value_ != 0" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) )) && (parenthesized_expression "(in_t1->calculated_value_ != 0xfffffffe)" ( (binary_expression "in_t1->calculated_value_ != 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) != number_literal) ))) )) (compound_statement "{\n                      iVar20 = *(int *)(pcStack_2f0 + -0x77f0);\nLAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);\n                    }" { (expression_statement "iVar20 = *(int *)(pcStack_2f0 + -0x77f0);" (assignment_expression "iVar20 = *(int *)(pcStack_2f0 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_2f0 + -0x77f0)" * (cast_expression "(int *)(pcStack_2f0 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_2f0 + -0x77f0)" ( (binary_expression "pcStack_2f0 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000ebb10:\n                      (**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);" statement_identifier : (expression_statement "(**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524);" (call_expression "(**(code **)(pcStack_2f0 + -0x7810))\n                                (*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524)" (parenthesized_expression "(**(code **)(pcStack_2f0 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_2f0 + -0x7810)" * (pointer_expression "*(code **)(pcStack_2f0 + -0x7810)" * (cast_expression "(code **)(pcStack_2f0 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_2f0 + -0x7810)" ( (binary_expression "pcStack_2f0 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570,0x71f,iVar20 + -0x3524)" ( (binary_expression "*(int *)(pcStack_2f0 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_2f0 + -0x7fc4)" * (cast_expression "(int *)(pcStack_2f0 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_2f0 + -0x7fc4)" ( (binary_expression "pcStack_2f0 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar20 + -0x3524" identifier + number_literal) ))) ;)) })) (expression_statement "in_t1->calculated_value_ = 0xfffffffe;" (assignment_expression "in_t1->calculated_value_ = 0xfffffffe" (field_expression "in_t1->calculated_value_" identifier -> field_identifier) = number_literal) ;) (expression_statement "uStack_2e8 = uStack_2e8 & 0xffffff;" (assignment_expression "uStack_2e8 = uStack_2e8 & 0xffffff" identifier = (binary_expression "uStack_2e8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)pRVar26)(pRVar14,p_Var32);" (call_expression "(*(code *)pRVar26)(pRVar14,p_Var32)" (parenthesized_expression "(*(code *)pRVar26)" ( (pointer_expression "*(code *)pRVar26" * (cast_expression "(code *)pRVar26" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pRVar14,p_Var32)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000eb950;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c);" (call_expression "(**(code **)(pcStack_2f0 + -0x7810))\n                          (*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c)" (parenthesized_expression "(**(code **)(pcStack_2f0 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_2f0 + -0x7810)" * (pointer_expression "*(code **)(pcStack_2f0 + -0x7810)" * (cast_expression "(code **)(pcStack_2f0 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_2f0 + -0x7810)" ( (binary_expression "pcStack_2f0 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_2f0 + -0x77f0) + -0x353c)" ( (binary_expression "*(int *)(pcStack_2f0 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_2f0 + -0x7fc4)" * (cast_expression "(int *)(pcStack_2f0 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_2f0 + -0x7fc4)" ( (binary_expression "pcStack_2f0 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_2f0 + -0x77f0) + -0x353c" (pointer_expression "*(int *)(pcStack_2f0 + -0x77f0)" * (cast_expression "(int *)(pcStack_2f0 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_2f0 + -0x77f0)" ( (binary_expression "pcStack_2f0 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000ebecc:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar35 + -0x77f0) + -0x3500)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x3500" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000ebee8:\n                (**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                          (*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x5c8,\n                           *(int *)(pcVar35 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0);" (call_expression "(**(code **)(pcVar35 + -0x7810))\n                        (*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar35 + -0x77f0) + -0x34b0)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x34b0" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000ebf20:\n              iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;" statement_identifier : (expression_statement "iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8;" (assignment_expression "iVar20 = *(int *)(pcVar35 + -0x77f0) + -0x34c8" identifier = (binary_expression "*(int *)(pcVar35 + -0x77f0) + -0x34c8" (pointer_expression "*(int *)(pcVar35 + -0x77f0)" * (cast_expression "(int *)(pcVar35 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x77f0)" ( (binary_expression "pcVar35 + -0x77f0" identifier + number_literal) )))) + number_literal)) ;)) (expression_statement "(**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20);" (call_expression "(**(code **)(pcVar35 + -0x7810))(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20)" (parenthesized_expression "(**(code **)(pcVar35 + -0x7810))" ( (pointer_expression "**(code **)(pcVar35 + -0x7810)" * (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x39d4,0x2e4,iVar20)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000ebf3c:\n              pcVar37 = *(code **)(pcVar35 + -0x7810);" statement_identifier : (expression_statement "pcVar37 = *(code **)(pcVar35 + -0x7810);" (assignment_expression "pcVar37 = *(code **)(pcVar35 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar35 + -0x7810)" * (cast_expression "(code **)(pcVar35 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + -0x7810)" ( (binary_expression "pcVar35 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs;" (comma_expression "pcVar31 = Target_mips<64,_false>::scan_relocatable_relocs" (assignment_expression "pcVar31 = Target_mips<64" identifier = (binary_expression "Target_mips<64" identifier < number_literal)) , (binary_expression "_false>::scan_relocatable_relocs" identifier > (ERROR "::" : :) identifier)) ;) (expression_statement "(*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc);" (call_expression "(*pcVar37)(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc)" (parenthesized_expression "(*pcVar37)" ( (pointer_expression "*pcVar37" * identifier) )) (argument_list "(*(int *)(pcVar35 + -0x7fc4) + 0x4570,0x50b,iVar20 + -0x34dc)" ( (binary_expression "*(int *)(pcVar35 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar35 + -0x7fc4)" * (cast_expression "(int *)(pcVar35 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + -0x7fc4)" ( (binary_expression "pcVar35 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar20 + -0x34dc" identifier + number_literal) ))) ;) (expression_statement "pRVar18 = pRStack_2d8;" (assignment_expression "pRVar18 = pRStack_2d8" identifier = identifier) ;) (expression_statement "pRVar25 = pRStack_2dc;" (assignment_expression "pRVar25 = pRStack_2dc" identifier = identifier) ;) (expression_statement "pRVar13 = pRStack_2f4;" (assignment_expression "pRVar13 = pRStack_2f4" identifier = identifier) ;) (expression_statement "pRStack_324 = pRVar12;" (assignment_expression "pRStack_324 = pRVar12" identifier = identifier) ;) (expression_statement "pRStack_330 = pRVar14;" (assignment_expression "pRStack_330 = pRVar14" identifier = identifier) ;) (expression_statement "pcVar35 = pcStack_2f0;" (assignment_expression "pcVar35 = pcStack_2f0" identifier = identifier) ;) (expression_statement "pcStack_32c = pcVar34;" (assignment_expression "pcStack_32c = pcVar34" identifier = identifier) ;) (expression_statement "pRStack_328 = pRVar26;" (assignment_expression "pRStack_328 = pRVar26" identifier = identifier) ;) (expression_statement "pOStack_320 = pOVar22;" (assignment_expression "pOStack_320 = pOVar22" identifier = identifier) ;) (expression_statement "pRStack_31c = pRVar24;" (assignment_expression "pRStack_31c = pRVar24" identifier = identifier) ;) (expression_statement "puStack_318 = puVar28;" (assignment_expression "puStack_318 = puVar28" identifier = identifier) ;) (expression_statement "uStack_314 = uVar5;" (assignment_expression "uStack_314 = uVar5" identifier = identifier) ;) (expression_statement "p_Stack_310 = p_Var32;" (assignment_expression "p_Stack_310 = p_Var32" identifier = identifier) ;) (expression_statement "pcStack_30c = pcVar31;" (assignment_expression "pcStack_30c = pcVar31" identifier = identifier) ;) (if_statement "if (pRStack_2f4 == (Relocate *)0x9) {\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }" if (parenthesized_expression "(pRStack_2f4 == (Relocate *)0x9)" ( (binary_expression "pRStack_2f4 == (Relocate *)0x9" identifier == (cast_expression "(Relocate *)0x9" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);\n                if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }\nLAB_000ec25c:\n                return SUB41(p_Var32,0);\n              }" { (expression_statement "p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8);" (assignment_expression "p_Var32 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8)" identifier = (pointer_expression "*(_func_int_varargs **)(pcVar37 + 0x3d5af8)" * (cast_expression "(_func_int_varargs **)(pcVar37 + 0x3d5af8)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5af8)" ( (binary_expression "pcVar37 + 0x3d5af8" identifier + number_literal) ))))) ;) (if_statement "if (p_Stack_2ec != (_func_int_varargs *)0x0) {\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }" if (parenthesized_expression "(p_Stack_2ec != (_func_int_varargs *)0x0)" ( (binary_expression "p_Stack_2ec != (_func_int_varargs *)0x0" identifier != (cast_expression "(_func_int_varargs *)0x0" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  p_Var33 = (_func_int_varargs *)0x0;\n                  p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                  p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;\n                  puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);\n                  do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);\n                }" { (expression_statement "p_Var33 = (_func_int_varargs *)0x0;" (assignment_expression "p_Var33 = (_func_int_varargs *)0x0" identifier = (cast_expression "(_func_int_varargs *)0x0" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);" (assignment_expression "p_Var36 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0)" identifier = (pointer_expression "*(_func_int_varargs **)(pcVar37 + 0x3d5bd0)" * (cast_expression "(_func_int_varargs **)(pcVar37 + 0x3d5bd0)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5bd0)" ( (binary_expression "pcVar37 + 0x3d5bd0" identifier + number_literal) ))))) ;) (expression_statement "p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864;" (assignment_expression "p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864" identifier = (binary_expression "*(_func_int_varargs **)(pcVar37 + 0x3d5af8) + 0x1864" (pointer_expression "*(_func_int_varargs **)(pcVar37 + 0x3d5af8)" * (cast_expression "(_func_int_varargs **)(pcVar37 + 0x3d5af8)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5af8)" ( (binary_expression "pcVar37 + 0x3d5af8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4);" (assignment_expression "puVar29 = (undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4)" identifier = (cast_expression "(undefined1 *)(*(int *)(pcVar37 + 0x3d5328) + 0x54b4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar37 + 0x3d5328) + 0x54b4)" ( (binary_expression "*(int *)(pcVar37 + 0x3d5328) + 0x54b4" (pointer_expression "*(int *)(pcVar37 + 0x3d5328)" * (cast_expression "(int *)(pcVar37 + 0x3d5328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5328)" ( (binary_expression "pcVar37 + 0x3d5328" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  } while (p_Stack_2ec != p_Var33);" do (compound_statement "{\n                    if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }\nLAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;\n                    pcVar35 = pcVar35 + 0x10;\n                    p_Var32 = p_Stack_2ec;\n                  }" { (if_statement "if ((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)) {\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }\n                    else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }" if (parenthesized_expression "((cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0))" ( (binary_expression "(cStack_2e1 == '\0') ||\n                       (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)" (parenthesized_expression "(cStack_2e1 == '\0')" ( (binary_expression "cStack_2e1 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0)" ( (comma_expression "iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                       iVar2 != 0" (assignment_expression "iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8)" identifier = (call_expression "(**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5c0c))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5c0c)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5c0c)" * (cast_expression "(code **)(pcVar37 + 0x3d5c0c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5c0c)" ( (binary_expression "pcVar37 + 0x3d5c0c" identifier + number_literal) ))))) )) (argument_list "(uStack_2e8,pOVar23,iStack_2f8)" ( identifier , identifier , identifier )))) , (binary_expression "iVar2 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                      uVar5 = *(uint *)(pcVar35 + 8);\n                      pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                      if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      *(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;\n                    }" { (expression_statement "uVar5 = *(uint *)(pcVar35 + 8);" (assignment_expression "uVar5 = *(uint *)(pcVar35 + 8)" identifier = (pointer_expression "*(uint *)(pcVar35 + 8)" * (cast_expression "(uint *)(pcVar35 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 8)" ( (binary_expression "pcVar35 + 8" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRVar12 = (Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                                ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                                ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (if_statement "if (pRVar12 < pRStack_2e0) {\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }\n                      else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" if (parenthesized_expression "(pRVar12 < pRStack_2e0)" ( (binary_expression "pRVar12 < pRStack_2e0" identifier < identifier) )) (compound_statement "{\n                        if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;\n                        uVar5 = (uint)(byte)pcVar35[0xf];\n                        iVar2 = (int)pRVar12 * 0x18;\n                        pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                        pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));\n                        if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }\n                        if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }\n                        p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                        if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }\n                        pcVar34 = *(code **)(pcVar37 + 0x3d5c08);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        auStack_350[0] = SUB41(pRStack_344,0);\n                        (*pcVar34)(pRVar18,auStack_350);\n                        if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" { (if_statement "if (pRVar25 == (Relocate *)0x0) goto LAB_000ec6a4;" if (parenthesized_expression "(pRVar25 == (Relocate *)0x0)" ( (binary_expression "pRVar25 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ec6a4;" goto statement_identifier ;)) (expression_statement "uVar5 = (uint)(byte)pcVar35[0xf];" (assignment_expression "uVar5 = (uint)(byte)pcVar35[0xf]" identifier = (cast_expression "(uint)(byte)pcVar35[0xf]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)pcVar35[0xf]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "pcVar35[0xf]" identifier [ number_literal ])))) ;) (expression_statement "iVar2 = (int)pRVar12 * 0x18;" (assignment_expression "iVar2 = (int)pRVar12 * 0x18" identifier = (binary_expression "(int)pRVar12 * 0x18" (cast_expression "(int)pRVar12" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pRVar14 = pRVar25 + (int)pRVar12 * 3;" (assignment_expression "pRVar14 = pRVar25 + (int)pRVar12 * 3" identifier = (binary_expression "pRVar25 + (int)pRVar12 * 3" identifier + (binary_expression "(int)pRVar12 * 3" (cast_expression "(int)pRVar12" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8));" (assignment_expression "pRVar26 = (Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8))" identifier = (cast_expression "(Relocate *)\n                                  ((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8))" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8))" ( (binary_expression "(*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                                  (uint)(*(ushort *)&pRVar14->field_0x6 >> 8)" (binary_expression "(*(ushort *)&pRVar14->field_0x6 & 0xff) << 8" (parenthesized_expression "(*(ushort *)&pRVar14->field_0x6 & 0xff)" ( (binary_expression "*(ushort *)&pRVar14->field_0x6 & 0xff" (pointer_expression "*(ushort *)&pRVar14->field_0x6" * (cast_expression "(ushort *)&pRVar14->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14->field_0x6" & (field_expression "pRVar14->field_0x6" identifier -> field_identifier)))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)&pRVar14->field_0x6 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)&pRVar14->field_0x6 >> 8)" ( (binary_expression "*(ushort *)&pRVar14->field_0x6 >> 8" (pointer_expression "*(ushort *)&pRVar14->field_0x6" * (cast_expression "(ushort *)&pRVar14->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14->field_0x6" & (field_expression "pRVar14->field_0x6" identifier -> field_identifier)))) >> number_literal) )))) )))) ;) (if_statement "if (pRVar26 < (Relocate *)0xff00) {\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }\n                        else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }" if (parenthesized_expression "(pRVar26 < (Relocate *)0xff00)" ( (binary_expression "pRVar26 < (Relocate *)0xff00" identifier < (cast_expression "(Relocate *)0xff00" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;\n                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;\n                          bVar1 = pRVar14->calculate_only_;\n                        }" { (labeled_statement "LAB_000ec454:\n                          if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;" statement_identifier : (if_statement "if (pRVar26 == (Relocate *)0x0) goto LAB_000ec348;" if (parenthesized_expression "(pRVar26 == (Relocate *)0x0)" ( (binary_expression "pRVar26 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ec348;" goto statement_identifier ;))) (if_statement "if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec688;" if (parenthesized_expression "((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26)" ( (binary_expression "(Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26" (cast_expression "(Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ec688;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)\n                          goto LAB_000ec3f4;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "(int)pRVar26 * 4" (cast_expression "(int)pRVar26" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ec3f4;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar14->calculate_only_;" (assignment_expression "bVar1 = pRVar14->calculate_only_" identifier = (field_expression "pRVar14->calculate_only_" identifier -> field_identifier)) ;) }) (else_clause "else {\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }" else (compound_statement "{\n                          if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }\nLAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;\n                        }" { (if_statement "if (pRVar26 == (Relocate *)0xffff) {\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }" if (parenthesized_expression "(pRVar26 == (Relocate *)0xffff)" ( (binary_expression "pRVar26 == (Relocate *)0xffff" identifier == (cast_expression "(Relocate *)0xffff" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            iVar20 = *(int *)&pOVar23->entsize_;\n                            pRStack_344 = pRVar12;\n                            iStack_338 = iVar2;\n                            uStack_340 = uVar5;\n                            pRStack_33c = pRVar14;\n                            if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }\n                            pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                            pRVar12 = pRStack_344;\n                            iVar2 = iStack_338;\n                            uVar5 = uStack_340;\n                            pRVar14 = pRStack_33c;\n                            goto LAB_000ec454;\n                          }" { (expression_statement "iVar20 = *(int *)&pOVar23->entsize_;" (assignment_expression "iVar20 = *(int *)&pOVar23->entsize_" identifier = (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_344 = pRVar12;" (assignment_expression "pRStack_344 = pRVar12" identifier = identifier) ;) (expression_statement "iStack_338 = iVar2;" (assignment_expression "iStack_338 = iVar2" identifier = identifier) ;) (expression_statement "uStack_340 = uVar5;" (assignment_expression "uStack_340 = uVar5" identifier = identifier) ;) (expression_statement "pRStack_33c = pRVar14;" (assignment_expression "pRStack_33c = pRVar14" identifier = identifier) ;) (if_statement "if (iVar20 == 0) {\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }" if (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);\n                              *(int *)&pOVar23->entsize_ = iVar20;\n                            }" { (expression_statement "iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350);" (assignment_expression "iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350)" identifier = (call_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])\n                                                 (pOVar23,auStack_350)" (parenthesized_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar23,auStack_350)" ( identifier , identifier )))) ;) (expression_statement "*(int *)&pOVar23->entsize_ = iVar20;" (assignment_expression "*(int *)&pOVar23->entsize_ = iVar20" (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);" (assignment_expression "pRVar26 = (Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344)" identifier = (cast_expression "(Relocate *)\n                                      (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5b5c))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5b5c)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5b5c)" * (cast_expression "(code **)(pcVar37 + 0x3d5b5c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5b5c)" ( (binary_expression "pcVar37 + 0x3d5b5c" identifier + number_literal) ))))) )) (argument_list "(iVar20,pOVar23,pRStack_344)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pRVar12 = pRStack_344;" (assignment_expression "pRVar12 = pRStack_344" identifier = identifier) ;) (expression_statement "iVar2 = iStack_338;" (assignment_expression "iVar2 = iStack_338" identifier = identifier) ;) (expression_statement "uVar5 = uStack_340;" (assignment_expression "uVar5 = uStack_340" identifier = identifier) ;) (expression_statement "pRVar14 = pRStack_33c;" (assignment_expression "pRVar14 = pRStack_33c" identifier = identifier) ;) (goto_statement "goto LAB_000ec454;" goto statement_identifier ;) })) (labeled_statement "LAB_000ec348:\n                          bVar1 = pRVar14->calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar14->calculate_only_;" (assignment_expression "bVar1 = pRVar14->calculate_only_" identifier = (field_expression "pRVar14->calculate_only_" identifier -> field_identifier)) ;)) }))) (if_statement "if ((bVar1 & 0xf) != 3) {\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }" if (parenthesized_expression "((bVar1 & 0xf) != 3)" ( (binary_expression "(bVar1 & 0xf) != 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                          if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;\n                          piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);\n                          if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }\n                          goto LAB_000ec634;\n                        }" { (if_statement "if ((uVar5 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec3f4;" if (parenthesized_expression "((uVar5 == 0) && (pRVar12 == (Relocate *)0x0))" ( (binary_expression "(uVar5 == 0) && (pRVar12 == (Relocate *)0x0)" (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) && (parenthesized_expression "(pRVar12 == (Relocate *)0x0)" ( (binary_expression "pRVar12 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000ec3f4;" goto statement_identifier ;)) (expression_statement "piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2);" (assignment_expression "piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2)" identifier = (cast_expression "(int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2)" ( (binary_expression "(int)&pOVar23->free_space_fill_->_vptr_Output_fill +\n                                          iVar2" (cast_expression "(int)&pOVar23->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar23->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar23->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier) -> field_identifier))) + identifier) )))) ;) (if_statement "if (pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }" if (parenthesized_expression "(pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555))" ( (binary_expression "pRVar12 < (Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)" identifier < (cast_expression "(Relocate *)\n                                        ((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)" ( (binary_expression "(*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555" (parenthesized_expression "(*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3)" ( (binary_expression "*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_ >> 3" (binary_expression "*(int *)&pOVar23->field_0xec -\n                                          (int)pOVar23->free_space_fill_" (pointer_expression "*(int *)&pOVar23->field_0xec" * (cast_expression "(int *)&pOVar23->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->field_0xec" & (field_expression "pOVar23->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar23->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier))) >> number_literal) )) * number_literal) )))) )) (compound_statement "{\n                            if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }\n                            *piVar9 = -2;\n                            goto LAB_000ec2b4;\n                          }" { (if_statement "if (*piVar9 != 0) {\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }" if (parenthesized_expression "(*piVar9 != 0)" ( (binary_expression "*piVar9 != 0" (pointer_expression "*piVar9" * identifier) != number_literal) )) (compound_statement "{\n                              iVar2 = *(int *)(pcVar37 + 0x3d5afc);\n                              p_Var27 = (_func_int_varargs *)0x9;\n                              if (*piVar9 != -2) goto LAB_000ec0d0;\n                            }" { (expression_statement "iVar2 = *(int *)(pcVar37 + 0x3d5afc);" (assignment_expression "iVar2 = *(int *)(pcVar37 + 0x3d5afc)" identifier = (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) ))))) ;) (expression_statement "p_Var27 = (_func_int_varargs *)0x9;" (assignment_expression "p_Var27 = (_func_int_varargs *)0x9" identifier = (cast_expression "(_func_int_varargs *)0x9" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (*piVar9 != -2) goto LAB_000ec0d0;" if (parenthesized_expression "(*piVar9 != -2)" ( (binary_expression "*piVar9 != -2" (pointer_expression "*piVar9" * identifier) != number_literal) )) (goto_statement "goto LAB_000ec0d0;" goto statement_identifier ;)) })) (expression_statement "*piVar9 = -2;" (assignment_expression "*piVar9 = -2" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (goto_statement "goto LAB_000ec2b4;" goto statement_identifier ;) })) (goto_statement "goto LAB_000ec634;" goto statement_identifier ;) })) (if_statement "if (uVar5 != 4) {\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }" if (parenthesized_expression "(uVar5 != 4)" ( (binary_expression "uVar5 != 4" identifier != number_literal) )) (compound_statement "{\n                          pRStack_344 = pRVar26;\n                          uVar5 = (*p_Stack_348)(uVar5,pOVar23);\n                          if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }\n                          goto switchD_000ec4c8_caseD_3;\n                        }" { (expression_statement "pRStack_344 = pRVar26;" (assignment_expression "pRStack_344 = pRVar26" identifier = identifier) ;) (expression_statement "uVar5 = (*p_Stack_348)(uVar5,pOVar23);" (assignment_expression "uVar5 = (*p_Stack_348)(uVar5,pOVar23)" identifier = (call_expression "(*p_Stack_348)(uVar5,pOVar23)" (parenthesized_expression "(*p_Stack_348)" ( (pointer_expression "*p_Stack_348" * identifier) )) (argument_list "(uVar5,pOVar23)" ( identifier , identifier )))) ;) (if_statement "if (uVar5 < 9) {\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }" if (parenthesized_expression "(uVar5 < 9)" ( (binary_expression "uVar5 < 9" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                            uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();\n                            return (bool)uVar11;\n                          }" { comment comment (expression_statement "uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))();" (assignment_expression "uVar11 = (*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))()" identifier = (call_expression "(*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))()" (parenthesized_expression "(*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec))" ( (pointer_expression "*(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec)" * (parenthesized_expression "(pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec)" ( (binary_expression "pcVar37 + *(int *)(puVar29 + uVar5 * 4) + 0x3dd2ec" (binary_expression "pcVar37 + *(int *)(puVar29 + uVar5 * 4)" identifier + (pointer_expression "*(int *)(puVar29 + uVar5 * 4)" * (cast_expression "(int *)(puVar29 + uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + uVar5 * 4)" ( (binary_expression "puVar29 + uVar5 * 4" identifier + (binary_expression "uVar5 * 4" identifier * number_literal)) ))))) + number_literal) ))) )) (argument_list "()" ( )))) ;) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) (goto_statement "goto switchD_000ec4c8_caseD_3;" goto statement_identifier ;) })) (expression_statement "p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18]" identifier = (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var32 == p_Var36) {\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }\n                        else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }" if (parenthesized_expression "(p_Var32 == p_Var36)" ( (binary_expression "p_Var32 == p_Var36" identifier == identifier) )) (compound_statement "{\n                          if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;\n                          iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);\n                          pRStack_344 = pRVar13;\n                        }" { (if_statement "if ((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26) goto LAB_000ec66c;" if (parenthesized_expression "((Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26)" ( (binary_expression "(Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                              <= pRVar26" (cast_expression "(Relocate *)\n                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ec66c;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + (int)pRVar26 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "(int)pRVar26 * 4" (cast_expression "(int)pRVar26" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))))) ;) (expression_statement "pRStack_344 = pRVar13;" (assignment_expression "pRStack_344 = pRVar13" identifier = identifier) ;) }) (else_clause "else {\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }" else (compound_statement "{\n                          pRStack_344 = pRVar13;\n                          iVar2 = (*p_Var32)(pOVar23,pRVar26);\n                        }" { (expression_statement "pRStack_344 = pRVar13;" (assignment_expression "pRStack_344 = pRVar13" identifier = identifier) ;) (expression_statement "iVar2 = (*p_Var32)(pOVar23,pRVar26);" (assignment_expression "iVar2 = (*p_Var32)(pOVar23,pRVar26)" identifier = (call_expression "(*p_Var32)(pOVar23,pRVar26)" (parenthesized_expression "(*p_Var32)" ( (pointer_expression "*p_Var32" * identifier) )) (argument_list "(pOVar23,pRVar26)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar34 = *(code **)(pcVar37 + 0x3d5c08);" (assignment_expression "pcVar34 = *(code **)(pcVar37 + 0x3d5c08)" identifier = (pointer_expression "*(code **)(pcVar37 + 0x3d5c08)" * (cast_expression "(code **)(pcVar37 + 0x3d5c08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5c08)" ( (binary_expression "pcVar37 + 0x3d5c08" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "auStack_350[0] = SUB41(pRStack_344,0);" (assignment_expression "auStack_350[0] = SUB41(pRStack_344,0)" (subscript_expression "auStack_350[0]" identifier [ number_literal ]) = (call_expression "SUB41(pRStack_344,0)" identifier (argument_list "(pRStack_344,0)" ( identifier , number_literal )))) ;) (expression_statement "(*pcVar34)(pRVar18,auStack_350);" (call_expression "(*pcVar34)(pRVar18,auStack_350)" (parenthesized_expression "(*pcVar34)" ( (pointer_expression "*pcVar34" * identifier) )) (argument_list "(pRVar18,auStack_350)" ( identifier , identifier ))) ;) (if_statement "if (pRStack_344 == (Relocate *)&DAT_00000008) goto LAB_000ec2d4;" if (parenthesized_expression "(pRStack_344 == (Relocate *)&DAT_00000008)" ( (binary_expression "pRStack_344 == (Relocate *)&DAT_00000008" identifier == (cast_expression "(Relocate *)&DAT_00000008" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000ec2d4;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)&pRVar18[1].calculate_only_;" (assignment_expression "iVar2 = *(int *)&pRVar18[1].calculate_only_" identifier = (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier))))) ;) }) (else_clause "else {\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" else (compound_statement "{\nLAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;\n                        (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                        iVar2 = *(int *)&pRVar18[1].calculate_only_;\n                      }" { (labeled_statement "LAB_000ec2b4:\n                        auStack_350[0] = (_func_int_varargs)0x0;" statement_identifier : (expression_statement "auStack_350[0] = (_func_int_varargs)0x0;" (assignment_expression "auStack_350[0] = (_func_int_varargs)0x0" (subscript_expression "auStack_350[0]" identifier [ number_literal ]) = (cast_expression "(_func_int_varargs)0x0" ( (type_descriptor "_func_int_varargs" type_identifier) ) number_literal)) ;)) (expression_statement "(**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);" (call_expression "(**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5c08))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5c08)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5c08)" * (cast_expression "(code **)(pcVar37 + 0x3d5c08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5c08)" ( (binary_expression "pcVar37 + 0x3d5c08" identifier + number_literal) ))))) )) (argument_list "(pRVar18,auStack_350)" ( identifier , identifier ))) ;) (expression_statement "iVar2 = *(int *)&pRVar18[1].calculate_only_;" (assignment_expression "iVar2 = *(int *)&pRVar18[1].calculate_only_" identifier = (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier))))) ;) }))) (expression_statement "*(int *)&pRVar18[1].calculate_only_ = iVar2 + 1;" (assignment_expression "*(int *)&pRVar18[1].calculate_only_ = iVar2 + 1" (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) }) (else_clause "else {\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }" else (compound_statement "{\nLAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;\n                      (**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);\n                    }" { (labeled_statement "LAB_000ec3f4:\n                      auStack_350[0] = (_func_int_varargs)0x8;" statement_identifier : (expression_statement "auStack_350[0] = (_func_int_varargs)0x8;" (assignment_expression "auStack_350[0] = (_func_int_varargs)0x8" (subscript_expression "auStack_350[0]" identifier [ number_literal ]) = (cast_expression "(_func_int_varargs)0x8" ( (type_descriptor "_func_int_varargs" type_identifier) ) number_literal)) ;)) (expression_statement "(**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350);" (call_expression "(**(code **)(pcVar37 + 0x3d5c08))(pRVar18,auStack_350)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5c08))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5c08)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5c08)" * (cast_expression "(code **)(pcVar37 + 0x3d5c08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5c08)" ( (binary_expression "pcVar37 + 0x3d5c08" identifier + number_literal) ))))) )) (argument_list "(pRVar18,auStack_350)" ( identifier , identifier ))) ;) }))) (labeled_statement "LAB_000ec2d4:\n                    p_Var33 = p_Var33 + 1;" statement_identifier : (expression_statement "p_Var33 = p_Var33 + 1;" (assignment_expression "p_Var33 = p_Var33 + 1" identifier = (binary_expression "p_Var33 + 1" identifier + number_literal)) ;)) (expression_statement "pcVar35 = pcVar35 + 0x10;" (assignment_expression "pcVar35 = pcVar35 + 0x10" identifier = (binary_expression "pcVar35 + 0x10" identifier + number_literal)) ;) (expression_statement "p_Var32 = p_Stack_2ec;" (assignment_expression "p_Var32 = p_Stack_2ec" identifier = identifier) ;) }) while (parenthesized_expression "(p_Stack_2ec != p_Var33)" ( (binary_expression "p_Stack_2ec != p_Var33" identifier != identifier) )) ;) })) (labeled_statement "LAB_000ec25c:\n                return SUB41(p_Var32,0);" statement_identifier : (return_statement "return SUB41(p_Var32,0);" return (call_expression "SUB41(p_Var32,0)" identifier (argument_list "(p_Var32,0)" ( identifier , number_literal ))) ;)) })) (if_statement "if (pRStack_2f4 == (Relocate *)&DAT_00000004) {\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }" if (parenthesized_expression "(pRStack_2f4 == (Relocate *)&DAT_00000004)" ( (binary_expression "pRStack_2f4 == (Relocate *)&DAT_00000004" identifier == (cast_expression "(Relocate *)&DAT_00000004" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);\n                p_Var32 = p_Stack_348;\n                if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;\n                p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);\n                p_Var27 = (_func_int_varargs *)0x0;\n                p_Var36 = (_func_int_varargs *)auStack_350;\n                puVar29 = &DAT_aaaaaaab;\nLAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                uVar5 = *(uint *)(pcVar35 + 8);\n                pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);\n                if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }\n                if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);\nLAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);\n              }" { (expression_statement "p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0);" (assignment_expression "p_Stack_348 = *(_func_int_varargs **)(pcVar37 + 0x3d5bd0)" identifier = (pointer_expression "*(_func_int_varargs **)(pcVar37 + 0x3d5bd0)" * (cast_expression "(_func_int_varargs **)(pcVar37 + 0x3d5bd0)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5bd0)" ( (binary_expression "pcVar37 + 0x3d5bd0" identifier + number_literal) ))))) ;) (expression_statement "p_Var32 = p_Stack_348;" (assignment_expression "p_Var32 = p_Stack_348" identifier = identifier) ;) (if_statement "if (p_Stack_2ec == (_func_int_varargs *)0x0) goto LAB_000ec25c;" if (parenthesized_expression "(p_Stack_2ec == (_func_int_varargs *)0x0)" ( (binary_expression "p_Stack_2ec == (_func_int_varargs *)0x0" identifier == (cast_expression "(_func_int_varargs *)0x0" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ec25c;" goto statement_identifier ;)) (expression_statement "p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08);" (assignment_expression "p_Var33 = *(_func_int_varargs **)(pcVar37 + 0x3d5c08)" identifier = (pointer_expression "*(_func_int_varargs **)(pcVar37 + 0x3d5c08)" * (cast_expression "(_func_int_varargs **)(pcVar37 + 0x3d5c08)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5c08)" ( (binary_expression "pcVar37 + 0x3d5c08" identifier + number_literal) ))))) ;) (expression_statement "p_Var27 = (_func_int_varargs *)0x0;" (assignment_expression "p_Var27 = (_func_int_varargs *)0x0" identifier = (cast_expression "(_func_int_varargs *)0x0" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var36 = (_func_int_varargs *)auStack_350;" (assignment_expression "p_Var36 = (_func_int_varargs *)auStack_350" identifier = (cast_expression "(_func_int_varargs *)auStack_350" ( (type_descriptor "_func_int_varargs *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puVar29 = &DAT_aaaaaaab;" (assignment_expression "puVar29 = &DAT_aaaaaaab" identifier = (pointer_expression "&DAT_aaaaaaab" & identifier)) ;) (labeled_statement "LAB_000ec010:\n                if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }" statement_identifier : (if_statement "if ((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)) {\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }" if (parenthesized_expression "((cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0))" ( (binary_expression "(cStack_2e1 != '\0') &&\n                   (iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)" (parenthesized_expression "(cStack_2e1 != '\0')" ( (binary_expression "cStack_2e1 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0)" ( (comma_expression "iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8),\n                   iVar2 == 0" (assignment_expression "iVar2 = (**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8)" identifier = (call_expression "(**(code **)(pcVar37 + 0x3d5c0c))(uStack_2e8,pOVar23,iStack_2f8)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5c0c))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5c0c)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5c0c)" * (cast_expression "(code **)(pcVar37 + 0x3d5c0c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5c0c)" ( (binary_expression "pcVar37 + 0x3d5c0c" identifier + number_literal) ))))) )) (argument_list "(uStack_2e8,pOVar23,iStack_2f8)" ( identifier , identifier , identifier )))) , (binary_expression "iVar2 == 0" identifier == number_literal)) ))) )) (compound_statement "{\nLAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;\n                  (*p_Var33)(pRVar18,p_Var36);\n                  p_Var27 = p_Var27 + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }" { (labeled_statement "LAB_000ec234:\n                  auStack_350[0] = (_func_int_varargs)0x8;" statement_identifier : (expression_statement "auStack_350[0] = (_func_int_varargs)0x8;" (assignment_expression "auStack_350[0] = (_func_int_varargs)0x8" (subscript_expression "auStack_350[0]" identifier [ number_literal ]) = (cast_expression "(_func_int_varargs)0x8" ( (type_descriptor "_func_int_varargs" type_identifier) ) number_literal)) ;)) (expression_statement "(*p_Var33)(pRVar18,p_Var36);" (call_expression "(*p_Var33)(pRVar18,p_Var36)" (parenthesized_expression "(*p_Var33)" ( (pointer_expression "*p_Var33" * identifier) )) (argument_list "(pRVar18,p_Var36)" ( identifier , identifier ))) ;) (expression_statement "p_Var27 = p_Var27 + 1;" (assignment_expression "p_Var27 = p_Var27 + 1" identifier = (binary_expression "p_Var27 + 1" identifier + number_literal)) ;) (expression_statement "pcVar35 = pcVar35 + 0x18;" (assignment_expression "pcVar35 = pcVar35 + 0x18" identifier = (binary_expression "pcVar35 + 0x18" identifier + number_literal)) ;) (expression_statement "p_Var32 = p_Stack_2ec;" (assignment_expression "p_Var32 = p_Stack_2ec" identifier = identifier) ;) (if_statement "if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;" if (parenthesized_expression "(p_Stack_2ec == p_Var27)" ( (binary_expression "p_Stack_2ec == p_Var27" identifier == identifier) )) (goto_statement "goto LAB_000ec25c;" goto statement_identifier ;)) (goto_statement "goto LAB_000ec010;" goto statement_identifier ;) }))) (expression_statement "uVar5 = *(uint *)(pcVar35 + 8);" (assignment_expression "uVar5 = *(uint *)(pcVar35 + 8)" identifier = (pointer_expression "*(uint *)(pcVar35 + 8)" * (cast_expression "(uint *)(pcVar35 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 8)" ( (binary_expression "pcVar35 + 8" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000);" (assignment_expression "pRVar12 = (Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(Relocate *)\n                          ((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10) +\n                          ((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10)" ( (binary_expression "(uVar5 >> 0x10) << 0x18 | (uVar5 >> 0x18) << 0x10" (binary_expression "(uVar5 >> 0x10) << 0x18" (parenthesized_expression "(uVar5 >> 0x10)" ( (binary_expression "uVar5 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar5 >> 0x18) << 0x10" (parenthesized_expression "(uVar5 >> 0x18)" ( (binary_expression "uVar5 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff)" ( (binary_expression "(uVar5 & 0xff) << 8 | uVar5 >> 8 & 0xff" (binary_expression "(uVar5 & 0xff) << 8" (parenthesized_expression "(uVar5 & 0xff)" ( (binary_expression "uVar5 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar5 >> 8 & 0xff" (binary_expression "uVar5 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (if_statement "if (pRStack_2e0 <= pRVar12) {\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }" if (parenthesized_expression "(pRStack_2e0 <= pRVar12)" ( (binary_expression "pRStack_2e0 <= pRVar12" identifier <= identifier) )) (compound_statement "{\n                  auStack_350[0] = (_func_int_varargs)0x0;\n                  (*p_Var33)(pRVar18,p_Var36);\nLAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;\n                  *(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;\n                  pcVar35 = pcVar35 + 0x18;\n                  p_Var32 = p_Stack_2ec;\n                  if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;\n                  goto LAB_000ec010;\n                }" { (expression_statement "auStack_350[0] = (_func_int_varargs)0x0;" (assignment_expression "auStack_350[0] = (_func_int_varargs)0x0" (subscript_expression "auStack_350[0]" identifier [ number_literal ]) = (cast_expression "(_func_int_varargs)0x0" ( (type_descriptor "_func_int_varargs" type_identifier) ) number_literal)) ;) (expression_statement "(*p_Var33)(pRVar18,p_Var36);" (call_expression "(*p_Var33)(pRVar18,p_Var36)" (parenthesized_expression "(*p_Var33)" ( (pointer_expression "*p_Var33" * identifier) )) (argument_list "(pRVar18,p_Var36)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000ebff4:\n                  p_Var27 = p_Var27 + 1;" statement_identifier : (expression_statement "p_Var27 = p_Var27 + 1;" (assignment_expression "p_Var27 = p_Var27 + 1" identifier = (binary_expression "p_Var27 + 1" identifier + number_literal)) ;)) (expression_statement "*(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1;" (assignment_expression "*(int *)&pRVar18[1].calculate_only_ = *(int *)&pRVar18[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "*(int *)&pRVar18[1].calculate_only_ + 1" (pointer_expression "*(int *)&pRVar18[1].calculate_only_" * (cast_expression "(int *)&pRVar18[1].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar18[1].calculate_only_" & (field_expression "pRVar18[1].calculate_only_" (subscript_expression "pRVar18[1]" identifier [ number_literal ]) . field_identifier)))) + number_literal)) ;) (expression_statement "pcVar35 = pcVar35 + 0x18;" (assignment_expression "pcVar35 = pcVar35 + 0x18" identifier = (binary_expression "pcVar35 + 0x18" identifier + number_literal)) ;) (expression_statement "p_Var32 = p_Stack_2ec;" (assignment_expression "p_Var32 = p_Stack_2ec" identifier = identifier) ;) (if_statement "if (p_Stack_2ec == p_Var27) goto LAB_000ec25c;" if (parenthesized_expression "(p_Stack_2ec == p_Var27)" ( (binary_expression "p_Stack_2ec == p_Var27" identifier == identifier) )) (goto_statement "goto LAB_000ec25c;" goto statement_identifier ;)) (goto_statement "goto LAB_000ec010;" goto statement_identifier ;) })) (if_statement "if (pRVar25 != (Relocate *)0x0) {\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }" if (parenthesized_expression "(pRVar25 != (Relocate *)0x0)" ( (binary_expression "pRVar25 != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  uVar7 = (uint)(byte)pcVar35[0xf];\n                  iVar2 = (int)pRVar12 * 0x18;\n                  pRVar14 = pRVar25 + (int)pRVar12 * 3;\n                  uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);\n                  if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  goto LAB_000ebff4;\n                }" { (expression_statement "uVar7 = (uint)(byte)pcVar35[0xf];" (assignment_expression "uVar7 = (uint)(byte)pcVar35[0xf]" identifier = (cast_expression "(uint)(byte)pcVar35[0xf]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)pcVar35[0xf]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "pcVar35[0xf]" identifier [ number_literal ])))) ;) (expression_statement "iVar2 = (int)pRVar12 * 0x18;" (assignment_expression "iVar2 = (int)pRVar12 * 0x18" identifier = (binary_expression "(int)pRVar12 * 0x18" (cast_expression "(int)pRVar12" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pRVar14 = pRVar25 + (int)pRVar12 * 3;" (assignment_expression "pRVar14 = pRVar25 + (int)pRVar12 * 3" identifier = (binary_expression "pRVar25 + (int)pRVar12 * 3" identifier + (binary_expression "(int)pRVar12 * 3" (cast_expression "(int)pRVar12" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8);" (assignment_expression "uVar5 = (*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8)" identifier = (binary_expression "(*(ushort *)&pRVar14->field_0x6 & 0xff) << 8 |\n                          (uint)(*(ushort *)&pRVar14->field_0x6 >> 8)" (binary_expression "(*(ushort *)&pRVar14->field_0x6 & 0xff) << 8" (parenthesized_expression "(*(ushort *)&pRVar14->field_0x6 & 0xff)" ( (binary_expression "*(ushort *)&pRVar14->field_0x6 & 0xff" (pointer_expression "*(ushort *)&pRVar14->field_0x6" * (cast_expression "(ushort *)&pRVar14->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14->field_0x6" & (field_expression "pRVar14->field_0x6" identifier -> field_identifier)))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)&pRVar14->field_0x6 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)&pRVar14->field_0x6 >> 8)" ( (binary_expression "*(ushort *)&pRVar14->field_0x6 >> 8" (pointer_expression "*(ushort *)&pRVar14->field_0x6" * (cast_expression "(ushort *)&pRVar14->field_0x6" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pRVar14->field_0x6" & (field_expression "pRVar14->field_0x6" identifier -> field_identifier)))) >> number_literal) ))))) ;) (if_statement "if (uVar5 < 0xff00) {\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }\n                  else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }" if (parenthesized_expression "(uVar5 < 0xff00)" ( (binary_expression "uVar5 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;\n                    iVar20 = *(int *)(pcVar37 + 0x3d5afc);\n                    if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;\n                    if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;\n                    bVar1 = pRVar14->calculate_only_;\n                  }" { (labeled_statement "LAB_000ec14c:\n                    if (uVar5 == 0) goto LAB_000ec074;" statement_identifier : (if_statement "if (uVar5 == 0) goto LAB_000ec074;" if (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000ec074;" goto statement_identifier ;))) (expression_statement "iVar20 = *(int *)(pcVar37 + 0x3d5afc);" (assignment_expression "iVar20 = *(int *)(pcVar37 + 0x3d5afc)" identifier = (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) ))))) ;) (if_statement "if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5) goto LAB_000ec68c;" if (parenthesized_expression "((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5)" ( (binary_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                        <= uVar5" (call_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ec68c;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)\n                    goto LAB_000ec234;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + uVar5 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + uVar5 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar5 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ec234;" goto statement_identifier ;)) (expression_statement "bVar1 = pRVar14->calculate_only_;" (assignment_expression "bVar1 = pRVar14->calculate_only_" identifier = (field_expression "pRVar14->calculate_only_" identifier -> field_identifier)) ;) }) (else_clause "else {\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }" else (compound_statement "{\n                    if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }\nLAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;\n                  }" { (if_statement "if (uVar5 == 0xffff) {\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }" if (parenthesized_expression "(uVar5 == 0xffff)" ( (binary_expression "uVar5 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar20 = *(int *)&pOVar23->entsize_;\n                      pRStack_344 = pRVar12;\n                      iStack_338 = iVar2;\n                      uStack_340 = uVar7;\n                      pRStack_33c = pRVar14;\n                      if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }\n                      uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);\n                      pRVar12 = pRStack_344;\n                      iVar2 = iStack_338;\n                      uVar7 = uStack_340;\n                      pRVar14 = pRStack_33c;\n                      goto LAB_000ec14c;\n                    }" { (expression_statement "iVar20 = *(int *)&pOVar23->entsize_;" (assignment_expression "iVar20 = *(int *)&pOVar23->entsize_" identifier = (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_344 = pRVar12;" (assignment_expression "pRStack_344 = pRVar12" identifier = identifier) ;) (expression_statement "iStack_338 = iVar2;" (assignment_expression "iStack_338 = iVar2" identifier = identifier) ;) (expression_statement "uStack_340 = uVar7;" (assignment_expression "uStack_340 = uVar7" identifier = identifier) ;) (expression_statement "pRStack_33c = pRVar14;" (assignment_expression "pRStack_33c = pRVar14" identifier = identifier) ;) (if_statement "if (iVar20 == 0) {\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }" if (parenthesized_expression "(iVar20 == 0)" ( (binary_expression "iVar20 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);\n                        *(int *)&pOVar23->entsize_ = iVar20;\n                      }" { (expression_statement "iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);" (assignment_expression "iVar20 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23)" identifier = (call_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23)" (parenthesized_expression "(*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar23)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar23->entsize_ = iVar20;" (assignment_expression "*(int *)&pOVar23->entsize_ = iVar20" (pointer_expression "*(int *)&pOVar23->entsize_" * (cast_expression "(int *)&pOVar23->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->entsize_" & (field_expression "pOVar23->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344);" (assignment_expression "uVar5 = (**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344)" identifier = (call_expression "(**(code **)(pcVar37 + 0x3d5b5c))(iVar20,pOVar23,pRStack_344)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5b5c))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5b5c)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5b5c)" * (cast_expression "(code **)(pcVar37 + 0x3d5b5c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5b5c)" ( (binary_expression "pcVar37 + 0x3d5b5c" identifier + number_literal) ))))) )) (argument_list "(iVar20,pOVar23,pRStack_344)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar12 = pRStack_344;" (assignment_expression "pRVar12 = pRStack_344" identifier = identifier) ;) (expression_statement "iVar2 = iStack_338;" (assignment_expression "iVar2 = iStack_338" identifier = identifier) ;) (expression_statement "uVar7 = uStack_340;" (assignment_expression "uVar7 = uStack_340" identifier = identifier) ;) (expression_statement "pRVar14 = pRStack_33c;" (assignment_expression "pRVar14 = pRStack_33c" identifier = identifier) ;) (goto_statement "goto LAB_000ec14c;" goto statement_identifier ;) })) (labeled_statement "LAB_000ec074:\n                    bVar1 = pRVar14->calculate_only_;" statement_identifier : (expression_statement "bVar1 = pRVar14->calculate_only_;" (assignment_expression "bVar1 = pRVar14->calculate_only_" identifier = (field_expression "pRVar14->calculate_only_" identifier -> field_identifier)) ;)) }))) (if_statement "if ((bVar1 & 0xf) == 3) {\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }\n                  else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }" if (parenthesized_expression "((bVar1 & 0xf) == 3)" ( (binary_expression "(bVar1 & 0xf) == 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;\n                    auStack_350[0] = (_func_int_varargs)0x1;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }" { (expression_statement "p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "p_Var32 = (pOVar23->super_Output_data)._vptr_Output_data[0x18]" identifier = (subscript_expression "(pOVar23->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar23->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar23->super_Output_data)" ( (field_expression "pOVar23->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var32 == p_Stack_348) {\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(p_Var32 == p_Stack_348)" ( (binary_expression "p_Var32 == p_Stack_348" identifier == identifier) )) (compound_statement "{\n                      if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;\n                      iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5) goto LAB_000ec66c;" if (parenthesized_expression "((uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5)" ( (binary_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)\n                          <= uVar5" (call_expression "(uint)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)" ( (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2" (binary_expression "(int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_" (cast_expression "(int)pOVar23->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ec66c;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" * (cast_expression "(int *)(*(int *)&pOVar23->load_address_ + uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar23->load_address_ + uVar5 * 4)" ( (binary_expression "*(int *)&pOVar23->load_address_ + uVar5 * 4" (pointer_expression "*(int *)&pOVar23->load_address_" * (cast_expression "(int *)&pOVar23->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->load_address_" & (field_expression "pOVar23->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar5 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar5 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar5 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (*p_Var32)(pOVar23,uVar5);\n                      uVar5 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (*p_Var32)(pOVar23,uVar5);" (assignment_expression "iVar2 = (*p_Var32)(pOVar23,uVar5)" identifier = (call_expression "(*p_Var32)(pOVar23,uVar5)" (parenthesized_expression "(*p_Var32)" ( (pointer_expression "*p_Var32" * identifier) )) (argument_list "(pOVar23,uVar5)" ( identifier , identifier )))) ;) (expression_statement "uVar5 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar5 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar5 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar5 & 0x7fffffff | 0x80000000" (binary_expression "uVar5 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "auStack_350[0] = (_func_int_varargs)0x1;" (assignment_expression "auStack_350[0] = (_func_int_varargs)0x1" (subscript_expression "auStack_350[0]" identifier [ number_literal ]) = (cast_expression "(_func_int_varargs)0x1" ( (type_descriptor "_func_int_varargs" type_identifier) ) number_literal)) ;) (expression_statement "(*p_Var33)(pRVar18,p_Var36);" (call_expression "(*p_Var33)(pRVar18,p_Var36)" (parenthesized_expression "(*p_Var33)" ( (pointer_expression "*p_Var33" * identifier) )) (argument_list "(pRVar18,p_Var36)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }" else (compound_statement "{\n                    if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;\n                    piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);\n                    if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;\n                    if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }\n                    *piVar9 = -2;\n                    auStack_350[0] = (_func_int_varargs)0x0;\n                    (*p_Var33)(pRVar18,p_Var36);\n                  }" { (if_statement "if ((uVar7 == 0) && (pRVar12 == (Relocate *)0x0)) goto LAB_000ec234;" if (parenthesized_expression "((uVar7 == 0) && (pRVar12 == (Relocate *)0x0))" ( (binary_expression "(uVar7 == 0) && (pRVar12 == (Relocate *)0x0)" (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) && (parenthesized_expression "(pRVar12 == (Relocate *)0x0)" ( (binary_expression "pRVar12 == (Relocate *)0x0" identifier == (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000ec234;" goto statement_identifier ;)) (expression_statement "piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2);" (assignment_expression "piVar9 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2)" identifier = (cast_expression "(int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2)" ( (binary_expression "(int)&pOVar23->free_space_fill_->_vptr_Output_fill + iVar2" (cast_expression "(int)&pOVar23->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar23->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar23->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier) -> field_identifier))) + identifier) )))) ;) (if_statement "if ((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12) goto LAB_000ec634;" if (parenthesized_expression "((Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12)" ( (binary_expression "(Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29) <= pRVar12" (cast_expression "(Relocate *)\n                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29)" ( (binary_expression "(*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *\n                        (int)puVar29" (parenthesized_expression "(*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)" ( (binary_expression "*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3" (binary_expression "*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_" (pointer_expression "*(int *)&pOVar23->field_0xec" * (cast_expression "(int *)&pOVar23->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar23->field_0xec" & (field_expression "pOVar23->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar23->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar23->free_space_fill_" identifier -> field_identifier))) >> number_literal) )) * (cast_expression "(int)puVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ))) <= identifier) )) (goto_statement "goto LAB_000ec634;" goto statement_identifier ;)) (if_statement "if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }" if (parenthesized_expression "((*piVar9 != 0) && (*piVar9 != -2))" ( (binary_expression "(*piVar9 != 0) && (*piVar9 != -2)" (parenthesized_expression "(*piVar9 != 0)" ( (binary_expression "*piVar9 != 0" (pointer_expression "*piVar9" * identifier) != number_literal) )) && (parenthesized_expression "(*piVar9 != -2)" ( (binary_expression "*piVar9 != -2" (pointer_expression "*piVar9" * identifier) != number_literal) ))) )) (compound_statement "{\n                      iVar2 = *(int *)(pcVar37 + 0x3d5afc);\nLAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);\n                    }" { (expression_statement "iVar2 = *(int *)(pcVar37 + 0x3d5afc);" (assignment_expression "iVar2 = *(int *)(pcVar37 + 0x3d5afc)" identifier = (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000ec0d0:\n                      (**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);" statement_identifier : (expression_statement "(**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524);" (call_expression "(**(code **)(pcVar37 + 0x3d5adc))\n                                (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5adc))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5adc)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5adc)" * (cast_expression "(code **)(pcVar37 + 0x3d5adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5adc)" ( (binary_expression "pcVar37 + 0x3d5adc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x71f,iVar2 + -0x3524)" ( (binary_expression "*(int *)(pcVar37 + 0x3d5328) + 0x4570" (pointer_expression "*(int *)(pcVar37 + 0x3d5328)" * (cast_expression "(int *)(pcVar37 + 0x3d5328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5328)" ( (binary_expression "pcVar37 + 0x3d5328" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x3524" identifier + number_literal) ))) ;)) })) (expression_statement "*piVar9 = -2;" (assignment_expression "*piVar9 = -2" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (expression_statement "auStack_350[0] = (_func_int_varargs)0x0;" (assignment_expression "auStack_350[0] = (_func_int_varargs)0x0" (subscript_expression "auStack_350[0]" identifier [ number_literal ]) = (cast_expression "(_func_int_varargs)0x0" ( (type_descriptor "_func_int_varargs" type_identifier) ) number_literal)) ;) (expression_statement "(*p_Var33)(pRVar18,p_Var36);" (call_expression "(*p_Var33)(pRVar18,p_Var36)" (parenthesized_expression "(*p_Var33)" ( (pointer_expression "*p_Var33" * identifier) )) (argument_list "(pRVar18,p_Var36)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000ebff4;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c);" (call_expression "(**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5adc))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5adc)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5adc)" * (cast_expression "(code **)(pcVar37 + 0x3d5adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5adc)" ( (binary_expression "pcVar37 + 0x3d5adc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x359c)" ( (binary_expression "*(int *)(pcVar37 + 0x3d5328) + 0x39d4" (pointer_expression "*(int *)(pcVar37 + 0x3d5328)" * (cast_expression "(int *)(pcVar37 + 0x3d5328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5328)" ( (binary_expression "pcVar37 + 0x3d5328" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5afc) + -0x359c" (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000ec634:\n                (**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);" statement_identifier : (expression_statement "(**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500);" (call_expression "(**(code **)(pcVar37 + 0x3d5adc))\n                          (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5adc))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5adc)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5adc)" * (cast_expression "(code **)(pcVar37 + 0x3d5adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5adc)" ( (binary_expression "pcVar37 + 0x3d5adc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x8e3,\n                           *(int *)(pcVar37 + 0x3d5afc) + -0x3500)" ( (binary_expression "*(int *)(pcVar37 + 0x3d5328) + 0x4570" (pointer_expression "*(int *)(pcVar37 + 0x3d5328)" * (cast_expression "(int *)(pcVar37 + 0x3d5328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5328)" ( (binary_expression "pcVar37 + 0x3d5328" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5afc) + -0x3500" (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) )))) + number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554);" (call_expression "(**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5adc))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5adc)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5adc)" * (cast_expression "(code **)(pcVar37 + 0x3d5adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5adc)" ( (binary_expression "pcVar37 + 0x3d5adc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d5328) + 0x3588,0x279c,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x3554)" ( (binary_expression "*(int *)(pcVar37 + 0x3d5328) + 0x3588" (pointer_expression "*(int *)(pcVar37 + 0x3d5328)" * (cast_expression "(int *)(pcVar37 + 0x3d5328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5328)" ( (binary_expression "pcVar37 + 0x3d5328" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5afc) + -0x3554" (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000ec66c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0);" (call_expression "(**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5adc))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5adc)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5adc)" * (cast_expression "(code **)(pcVar37 + 0x3d5adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5adc)" ( (binary_expression "pcVar37 + 0x3d5adc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x5c8,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x33a0)" ( (binary_expression "*(int *)(pcVar37 + 0x3d5328) + 0x4570" (pointer_expression "*(int *)(pcVar37 + 0x3d5328)" * (cast_expression "(int *)(pcVar37 + 0x3d5328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5328)" ( (binary_expression "pcVar37 + 0x3d5328" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5afc) + -0x33a0" (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000ec688:\n              iVar20 = *(int *)(pcVar37 + 0x3d5afc);" statement_identifier : (expression_statement "iVar20 = *(int *)(pcVar37 + 0x3d5afc);" (assignment_expression "iVar20 = *(int *)(pcVar37 + 0x3d5afc)" identifier = (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000ec68c:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);" statement_identifier : (expression_statement "(**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc);" (call_expression "(**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5adc))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5adc)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5adc)" * (cast_expression "(code **)(pcVar37 + 0x3d5adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5adc)" ( (binary_expression "pcVar37 + 0x3d5adc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d5328) + 0x4570,0x50b,iVar20 + -0x34dc)" ( (binary_expression "*(int *)(pcVar37 + 0x3d5328) + 0x4570" (pointer_expression "*(int *)(pcVar37 + 0x3d5328)" * (cast_expression "(int *)(pcVar37 + 0x3d5328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5328)" ( (binary_expression "pcVar37 + 0x3d5328" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar20 + -0x34dc" identifier + number_literal) ))) ;)) (labeled_statement "LAB_000ec6a4:\n              (**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);" statement_identifier : (expression_statement "(**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c);" (call_expression "(**(code **)(pcVar37 + 0x3d5adc))\n                        (*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5adc))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5adc)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5adc)" * (cast_expression "(code **)(pcVar37 + 0x3d5adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5adc)" ( (binary_expression "pcVar37 + 0x3d5adc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d5328) + 0x39d4,0x2e4,\n                         *(int *)(pcVar37 + 0x3d5afc) + -0x356c)" ( (binary_expression "*(int *)(pcVar37 + 0x3d5328) + 0x39d4" (pointer_expression "*(int *)(pcVar37 + 0x3d5328)" * (cast_expression "(int *)(pcVar37 + 0x3d5328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5328)" ( (binary_expression "pcVar37 + 0x3d5328" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5afc) + -0x356c" (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "switchD_000ec4c8_caseD_3:\n              iVar20 = 0x276;" statement_identifier : (expression_statement "iVar20 = 0x276;" (assignment_expression "iVar20 = 0x276" identifier = number_literal) ;)) (expression_statement "pcVar35 = *(code **)(pcVar37 + 0x3d5adc);" (assignment_expression "pcVar35 = *(code **)(pcVar37 + 0x3d5adc)" identifier = (pointer_expression "*(code **)(pcVar37 + 0x3d5adc)" * (cast_expression "(code **)(pcVar37 + 0x3d5adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5adc)" ( (binary_expression "pcVar37 + 0x3d5adc" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4;" (assignment_expression "iVar2 = *(int *)(pcVar37 + 0x3d5328) + 0x39d4" identifier = (binary_expression "*(int *)(pcVar37 + 0x3d5328) + 0x39d4" (pointer_expression "*(int *)(pcVar37 + 0x3d5328)" * (cast_expression "(int *)(pcVar37 + 0x3d5328)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5328)" ( (binary_expression "pcVar37 + 0x3d5328" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584);" (call_expression "(*pcVar35)(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584)" (parenthesized_expression "(*pcVar35)" ( (pointer_expression "*pcVar35" * identifier) )) (argument_list "(iVar2,0x276,*(int *)(pcVar37 + 0x3d5afc) + -0x3584)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5afc) + -0x3584" (pointer_expression "*(int *)(pcVar37 + 0x3d5afc)" * (cast_expression "(int *)(pcVar37 + 0x3d5afc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5afc)" ( (binary_expression "pcVar37 + 0x3d5afc" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x54) == 0)" ( (binary_expression "*(int *)(iVar2 + 0x54) == 0" (pointer_expression "*(int *)(iVar2 + 0x54)" * (cast_expression "(int *)(iVar2 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x54)" ( (binary_expression "iVar2 + 0x54" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                (**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);\n              }" { (expression_statement "(**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c);" (call_expression "(**(code **)(pcVar35 + 0x3d5354))\n                          (*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d5354))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d5354)" * (pointer_expression "*(code **)(pcVar35 + 0x3d5354)" * (cast_expression "(code **)(pcVar35 + 0x3d5354)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d5354)" ( (binary_expression "pcVar35 + 0x3d5354" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d5374) + -0x4e5c)" ( (binary_expression "*(int *)(pcVar35 + 0x3d4ba0) + 0x37c0" (pointer_expression "*(int *)(pcVar35 + 0x3d4ba0)" * (cast_expression "(int *)(pcVar35 + 0x3d4ba0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d4ba0)" ( (binary_expression "pcVar35 + 0x3d4ba0" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + 0x3d5374) + -0x4e5c" (pointer_expression "*(int *)(pcVar35 + 0x3d5374)" * (cast_expression "(int *)(pcVar35 + 0x3d5374)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d5374)" ( (binary_expression "pcVar35 + 0x3d5374" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" else (if_statement "if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x14) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x14) != 0" (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" { (expression_statement "piVar15 = *(int **)(iVar20 + 4);" (assignment_expression "piVar15 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar16 = *(int **)(iVar20 + 8);" (assignment_expression "piVar16 = *(int **)(iVar20 + 8)" identifier = (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) ;) (expression_statement "piVar9 = piVar15 + 1;" (assignment_expression "piVar9 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (if_statement "if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" if (parenthesized_expression "(piVar15 == piVar16)" ( (binary_expression "piVar15 == piVar16" identifier == identifier) )) (compound_statement "{\n                  (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;\n                }" { (expression_statement "(**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14);" (call_expression "(**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar16,iVar2 + 0x14)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d5488))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d5488)" * (pointer_expression "*(code **)(pcVar35 + 0x3d5488)" * (cast_expression "(code **)(pcVar35 + 0x3d5488)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d5488)" ( (binary_expression "pcVar35 + 0x3d5488" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar16,iVar2 + 0x14)" ( identifier , identifier , (binary_expression "iVar2 + 0x14" identifier + number_literal) ))) ;) (expression_statement "piVar9 = *(int **)(iVar20 + 4);" (assignment_expression "piVar9 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (if_statement "if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec774;" if (parenthesized_expression "(piVar9 == *(int **)(iVar20 + 8))" ( (binary_expression "piVar9 == *(int **)(iVar20 + 8)" identifier == (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000ec774;" goto statement_identifier ;)) }) (else_clause "else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" else (compound_statement "{\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" { (expression_statement "*piVar15 = *(int *)(iVar2 + 0x14);" (assignment_expression "*piVar15 = *(int *)(iVar2 + 0x14)" (pointer_expression "*piVar15" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = identifier) ;) (if_statement "if (piVar9 == piVar16) {\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }" if (parenthesized_expression "(piVar9 == piVar16)" ( (binary_expression "piVar9 == piVar16" identifier == identifier) )) (compound_statement "{\nLAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }" { (labeled_statement "LAB_000ec774:\n                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);" statement_identifier : comment comment (expression_statement "uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54);" (assignment_expression "uVar11 = (**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54)" identifier = (call_expression "(**(code **)(pcVar35 + 0x3d5488))(iVar20,piVar9,iVar2 + 0x54)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d5488))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d5488)" * (pointer_expression "*(code **)(pcVar35 + 0x3d5488)" * (cast_expression "(code **)(pcVar35 + 0x3d5488)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d5488)" ( (binary_expression "pcVar35 + 0x3d5488" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar9,iVar2 + 0x54)" ( identifier , identifier , (binary_expression "iVar2 + 0x54" identifier + number_literal) )))) ;)) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) }))) (expression_statement "*piVar9 = *(int *)(iVar2 + 0x54);" (assignment_expression "*piVar9 = *(int *)(iVar2 + 0x54)" (pointer_expression "*piVar9" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x54)" * (cast_expression "(int *)(iVar2 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x54)" ( (binary_expression "iVar2 + 0x54" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9 + 1;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9 + 1" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (return_statement "return SUB41(piVar9,0);" return (call_expression "SUB41(piVar9,0)" identifier (argument_list "(piVar9,0)" ( identifier , number_literal ))) ;) })))) (expression_statement "iVar20 = 200;" (assignment_expression "iVar20 = 200" identifier = number_literal) ;) (expression_statement "pcVar37 = *(code **)(pcVar35 + 0x3d5354);" (assignment_expression "pcVar37 = *(code **)(pcVar35 + 0x3d5354)" identifier = (pointer_expression "*(code **)(pcVar35 + 0x3d5354)" * (cast_expression "(code **)(pcVar35 + 0x3d5354)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d5354)" ( (binary_expression "pcVar35 + 0x3d5354" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0;" (assignment_expression "iVar2 = *(int *)(pcVar35 + 0x3d4ba0) + 0x39f0" identifier = (binary_expression "*(int *)(pcVar35 + 0x3d4ba0) + 0x39f0" (pointer_expression "*(int *)(pcVar35 + 0x3d4ba0)" * (cast_expression "(int *)(pcVar35 + 0x3d4ba0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d4ba0)" ( (binary_expression "pcVar35 + 0x3d4ba0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258);" (call_expression "(*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258)" (parenthesized_expression "(*pcVar37)" ( (pointer_expression "*pcVar37" * identifier) )) (argument_list "(iVar2,200,*(int *)(pcVar35 + 0x3d5374) + -0x3258)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar35 + 0x3d5374) + -0x3258" (pointer_expression "*(int *)(pcVar35 + 0x3d5374)" * (cast_expression "(int *)(pcVar35 + 0x3d5374)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d5374)" ( (binary_expression "pcVar35 + 0x3d5374" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x54) == 0)" ( (binary_expression "*(int *)(iVar2 + 0x54) == 0" (pointer_expression "*(int *)(iVar2 + 0x54)" * (cast_expression "(int *)(iVar2 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x54)" ( (binary_expression "iVar2 + 0x54" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                (**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);\n              }" { (expression_statement "(**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240);" (call_expression "(**(code **)(pcVar37 + 0x3d5260))\n                          (*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5260))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5260)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5260)" * (cast_expression "(code **)(pcVar37 + 0x3d5260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5260)" ( (binary_expression "pcVar37 + 0x3d5260" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d4aac) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d5280) + -0x3240)" ( (binary_expression "*(int *)(pcVar37 + 0x3d4aac) + 0x37c0" (pointer_expression "*(int *)(pcVar37 + 0x3d4aac)" * (cast_expression "(int *)(pcVar37 + 0x3d4aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d4aac)" ( (binary_expression "pcVar37 + 0x3d4aac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5280) + -0x3240" (pointer_expression "*(int *)(pcVar37 + 0x3d5280)" * (cast_expression "(int *)(pcVar37 + 0x3d5280)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5280)" ( (binary_expression "pcVar37 + 0x3d5280" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" else (if_statement "if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x14) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x14) != 0" (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" { (expression_statement "piVar15 = *(int **)(iVar20 + 4);" (assignment_expression "piVar15 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar16 = *(int **)(iVar20 + 8);" (assignment_expression "piVar16 = *(int **)(iVar20 + 8)" identifier = (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) ;) (expression_statement "piVar9 = piVar15 + 1;" (assignment_expression "piVar9 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (if_statement "if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" if (parenthesized_expression "(piVar15 == piVar16)" ( (binary_expression "piVar15 == piVar16" identifier == identifier) )) (compound_statement "{\n                  (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;\n                }" { (expression_statement "(**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14);" (call_expression "(**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar16,iVar2 + 0x14)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5394))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5394)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5394)" * (cast_expression "(code **)(pcVar37 + 0x3d5394)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5394)" ( (binary_expression "pcVar37 + 0x3d5394" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar16,iVar2 + 0x14)" ( identifier , identifier , (binary_expression "iVar2 + 0x14" identifier + number_literal) ))) ;) (expression_statement "piVar9 = *(int **)(iVar20 + 4);" (assignment_expression "piVar9 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (if_statement "if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec868;" if (parenthesized_expression "(piVar9 == *(int **)(iVar20 + 8))" ( (binary_expression "piVar9 == *(int **)(iVar20 + 8)" identifier == (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000ec868;" goto statement_identifier ;)) }) (else_clause "else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" else (compound_statement "{\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" { (expression_statement "*piVar15 = *(int *)(iVar2 + 0x14);" (assignment_expression "*piVar15 = *(int *)(iVar2 + 0x14)" (pointer_expression "*piVar15" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = identifier) ;) (if_statement "if (piVar9 == piVar16) {\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }" if (parenthesized_expression "(piVar9 == piVar16)" ( (binary_expression "piVar9 == piVar16" identifier == identifier) )) (compound_statement "{\nLAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }" { (labeled_statement "LAB_000ec868:\n                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);" statement_identifier : comment comment (expression_statement "uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54);" (assignment_expression "uVar11 = (**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54)" identifier = (call_expression "(**(code **)(pcVar37 + 0x3d5394))(iVar20,piVar9,iVar2 + 0x54)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5394))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5394)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5394)" * (cast_expression "(code **)(pcVar37 + 0x3d5394)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5394)" ( (binary_expression "pcVar37 + 0x3d5394" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar9,iVar2 + 0x54)" ( identifier , identifier , (binary_expression "iVar2 + 0x54" identifier + number_literal) )))) ;)) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) }))) (expression_statement "*piVar9 = *(int *)(iVar2 + 0x54);" (assignment_expression "*piVar9 = *(int *)(iVar2 + 0x54)" (pointer_expression "*piVar9" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x54)" * (cast_expression "(int *)(iVar2 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x54)" ( (binary_expression "iVar2 + 0x54" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9 + 1;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9 + 1" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (return_statement "return SUB41(piVar9,0);" return (call_expression "SUB41(piVar9,0)" identifier (argument_list "(piVar9,0)" ( identifier , number_literal ))) ;) })))) (expression_statement "iVar20 = 200;" (assignment_expression "iVar20 = 200" identifier = number_literal) ;) (expression_statement "pcVar35 = *(code **)(pcVar37 + 0x3d5260);" (assignment_expression "pcVar35 = *(code **)(pcVar37 + 0x3d5260)" identifier = (pointer_expression "*(code **)(pcVar37 + 0x3d5260)" * (cast_expression "(code **)(pcVar37 + 0x3d5260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5260)" ( (binary_expression "pcVar37 + 0x3d5260" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0;" (assignment_expression "iVar2 = *(int *)(pcVar37 + 0x3d4aac) + 0x39f0" identifier = (binary_expression "*(int *)(pcVar37 + 0x3d4aac) + 0x39f0" (pointer_expression "*(int *)(pcVar37 + 0x3d4aac)" * (cast_expression "(int *)(pcVar37 + 0x3d4aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d4aac)" ( (binary_expression "pcVar37 + 0x3d4aac" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258);" (call_expression "(*pcVar35)(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258)" (parenthesized_expression "(*pcVar35)" ( (pointer_expression "*pcVar35" * identifier) )) (argument_list "(iVar2,200,*(int *)(pcVar37 + 0x3d5280) + -0x3258)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5280) + -0x3258" (pointer_expression "*(int *)(pcVar37 + 0x3d5280)" * (cast_expression "(int *)(pcVar37 + 0x3d5280)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5280)" ( (binary_expression "pcVar37 + 0x3d5280" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x50) == 0)" ( (binary_expression "*(int *)(iVar2 + 0x50) == 0" (pointer_expression "*(int *)(iVar2 + 0x50)" * (cast_expression "(int *)(iVar2 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x50)" ( (binary_expression "iVar2 + 0x50" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                (**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);\n              }" { (expression_statement "(**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694);" (call_expression "(**(code **)(pcVar35 + 0x3d516c))\n                          (*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d516c))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d516c)" * (pointer_expression "*(code **)(pcVar35 + 0x3d516c)" * (cast_expression "(code **)(pcVar35 + 0x3d516c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d516c)" ( (binary_expression "pcVar35 + 0x3d516c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + 0x3d49b8) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d518c) + -0x4694)" ( (binary_expression "*(int *)(pcVar35 + 0x3d49b8) + 0x37c0" (pointer_expression "*(int *)(pcVar35 + 0x3d49b8)" * (cast_expression "(int *)(pcVar35 + 0x3d49b8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d49b8)" ( (binary_expression "pcVar35 + 0x3d49b8" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + 0x3d518c) + -0x4694" (pointer_expression "*(int *)(pcVar35 + 0x3d518c)" * (cast_expression "(int *)(pcVar35 + 0x3d518c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d518c)" ( (binary_expression "pcVar35 + 0x3d518c" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" else (if_statement "if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x10) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x10) != 0" (pointer_expression "*(int *)(iVar2 + 0x10)" * (cast_expression "(int *)(iVar2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x10)" ( (binary_expression "iVar2 + 0x10" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" { (expression_statement "piVar15 = *(int **)(iVar20 + 4);" (assignment_expression "piVar15 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar16 = *(int **)(iVar20 + 8);" (assignment_expression "piVar16 = *(int **)(iVar20 + 8)" identifier = (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) ;) (expression_statement "piVar9 = piVar15 + 1;" (assignment_expression "piVar9 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (if_statement "if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" if (parenthesized_expression "(piVar15 == piVar16)" ( (binary_expression "piVar15 == piVar16" identifier == identifier) )) (compound_statement "{\n                  (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;\n                }" { (expression_statement "(**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10);" (call_expression "(**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar16,iVar2 + 0x10)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d52a0))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d52a0)" * (pointer_expression "*(code **)(pcVar35 + 0x3d52a0)" * (cast_expression "(code **)(pcVar35 + 0x3d52a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d52a0)" ( (binary_expression "pcVar35 + 0x3d52a0" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar16,iVar2 + 0x10)" ( identifier , identifier , (binary_expression "iVar2 + 0x10" identifier + number_literal) ))) ;) (expression_statement "piVar9 = *(int **)(iVar20 + 4);" (assignment_expression "piVar9 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (if_statement "if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ec95c;" if (parenthesized_expression "(piVar9 == *(int **)(iVar20 + 8))" ( (binary_expression "piVar9 == *(int **)(iVar20 + 8)" identifier == (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000ec95c;" goto statement_identifier ;)) }) (else_clause "else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" else (compound_statement "{\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" { (expression_statement "*piVar15 = *(int *)(iVar2 + 0x10);" (assignment_expression "*piVar15 = *(int *)(iVar2 + 0x10)" (pointer_expression "*piVar15" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x10)" * (cast_expression "(int *)(iVar2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x10)" ( (binary_expression "iVar2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = identifier) ;) (if_statement "if (piVar9 == piVar16) {\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }" if (parenthesized_expression "(piVar9 == piVar16)" ( (binary_expression "piVar9 == piVar16" identifier == identifier) )) (compound_statement "{\nLAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }" { (labeled_statement "LAB_000ec95c:\n                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);" statement_identifier : comment comment (expression_statement "uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50);" (assignment_expression "uVar11 = (**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50)" identifier = (call_expression "(**(code **)(pcVar35 + 0x3d52a0))(iVar20,piVar9,iVar2 + 0x50)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d52a0))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d52a0)" * (pointer_expression "*(code **)(pcVar35 + 0x3d52a0)" * (cast_expression "(code **)(pcVar35 + 0x3d52a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d52a0)" ( (binary_expression "pcVar35 + 0x3d52a0" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar9,iVar2 + 0x50)" ( identifier , identifier , (binary_expression "iVar2 + 0x50" identifier + number_literal) )))) ;)) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) }))) (expression_statement "*piVar9 = *(int *)(iVar2 + 0x50);" (assignment_expression "*piVar9 = *(int *)(iVar2 + 0x50)" (pointer_expression "*piVar9" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x50)" * (cast_expression "(int *)(iVar2 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x50)" ( (binary_expression "iVar2 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9 + 1;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9 + 1" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (return_statement "return SUB41(piVar9,0);" return (call_expression "SUB41(piVar9,0)" identifier (argument_list "(piVar9,0)" ( identifier , number_literal ))) ;) })))) (expression_statement "iVar20 = 0xb6;" (assignment_expression "iVar20 = 0xb6" identifier = number_literal) ;) (expression_statement "pcVar37 = *(code **)(pcVar35 + 0x3d516c);" (assignment_expression "pcVar37 = *(code **)(pcVar35 + 0x3d516c)" identifier = (pointer_expression "*(code **)(pcVar35 + 0x3d516c)" * (cast_expression "(code **)(pcVar35 + 0x3d516c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d516c)" ( (binary_expression "pcVar35 + 0x3d516c" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0;" (assignment_expression "iVar2 = *(int *)(pcVar35 + 0x3d49b8) + 0x39f0" identifier = (binary_expression "*(int *)(pcVar35 + 0x3d49b8) + 0x39f0" (pointer_expression "*(int *)(pcVar35 + 0x3d49b8)" * (cast_expression "(int *)(pcVar35 + 0x3d49b8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d49b8)" ( (binary_expression "pcVar35 + 0x3d49b8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288);" (call_expression "(*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288)" (parenthesized_expression "(*pcVar37)" ( (pointer_expression "*pcVar37" * identifier) )) (argument_list "(iVar2,0xb6,*(int *)(pcVar35 + 0x3d518c) + -0x3288)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar35 + 0x3d518c) + -0x3288" (pointer_expression "*(int *)(pcVar35 + 0x3d518c)" * (cast_expression "(int *)(pcVar35 + 0x3d518c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d518c)" ( (binary_expression "pcVar35 + 0x3d518c" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x50) == 0)" ( (binary_expression "*(int *)(iVar2 + 0x50) == 0" (pointer_expression "*(int *)(iVar2 + 0x50)" * (cast_expression "(int *)(iVar2 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x50)" ( (binary_expression "iVar2 + 0x50" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                (**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);\n              }" { (expression_statement "(**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34);" (call_expression "(**(code **)(pcVar37 + 0x3d5078))\n                          (*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d5078))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d5078)" * (pointer_expression "*(code **)(pcVar37 + 0x3d5078)" * (cast_expression "(code **)(pcVar37 + 0x3d5078)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5078)" ( (binary_expression "pcVar37 + 0x3d5078" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d48c4) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d5098) + -0x3f34)" ( (binary_expression "*(int *)(pcVar37 + 0x3d48c4) + 0x37c0" (pointer_expression "*(int *)(pcVar37 + 0x3d48c4)" * (cast_expression "(int *)(pcVar37 + 0x3d48c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d48c4)" ( (binary_expression "pcVar37 + 0x3d48c4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5098) + -0x3f34" (pointer_expression "*(int *)(pcVar37 + 0x3d5098)" * (cast_expression "(int *)(pcVar37 + 0x3d5098)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5098)" ( (binary_expression "pcVar37 + 0x3d5098" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" else (if_statement "if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x10) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x10) != 0" (pointer_expression "*(int *)(iVar2 + 0x10)" * (cast_expression "(int *)(iVar2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x10)" ( (binary_expression "iVar2 + 0x10" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" { (expression_statement "piVar15 = *(int **)(iVar20 + 4);" (assignment_expression "piVar15 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar16 = *(int **)(iVar20 + 8);" (assignment_expression "piVar16 = *(int **)(iVar20 + 8)" identifier = (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) ;) (expression_statement "piVar9 = piVar15 + 1;" (assignment_expression "piVar9 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (if_statement "if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" if (parenthesized_expression "(piVar15 == piVar16)" ( (binary_expression "piVar15 == piVar16" identifier == identifier) )) (compound_statement "{\n                  (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;\n                }" { (expression_statement "(**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10);" (call_expression "(**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar16,iVar2 + 0x10)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d51ac))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d51ac)" * (pointer_expression "*(code **)(pcVar37 + 0x3d51ac)" * (cast_expression "(code **)(pcVar37 + 0x3d51ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d51ac)" ( (binary_expression "pcVar37 + 0x3d51ac" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar16,iVar2 + 0x10)" ( identifier , identifier , (binary_expression "iVar2 + 0x10" identifier + number_literal) ))) ;) (expression_statement "piVar9 = *(int **)(iVar20 + 4);" (assignment_expression "piVar9 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (if_statement "if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000eca50;" if (parenthesized_expression "(piVar9 == *(int **)(iVar20 + 8))" ( (binary_expression "piVar9 == *(int **)(iVar20 + 8)" identifier == (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000eca50;" goto statement_identifier ;)) }) (else_clause "else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" else (compound_statement "{\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" { (expression_statement "*piVar15 = *(int *)(iVar2 + 0x10);" (assignment_expression "*piVar15 = *(int *)(iVar2 + 0x10)" (pointer_expression "*piVar15" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x10)" * (cast_expression "(int *)(iVar2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x10)" ( (binary_expression "iVar2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = identifier) ;) (if_statement "if (piVar9 == piVar16) {\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }" if (parenthesized_expression "(piVar9 == piVar16)" ( (binary_expression "piVar9 == piVar16" identifier == identifier) )) (compound_statement "{\nLAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }" { (labeled_statement "LAB_000eca50:\n                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);" statement_identifier : comment comment (expression_statement "uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50);" (assignment_expression "uVar11 = (**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50)" identifier = (call_expression "(**(code **)(pcVar37 + 0x3d51ac))(iVar20,piVar9,iVar2 + 0x50)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d51ac))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d51ac)" * (pointer_expression "*(code **)(pcVar37 + 0x3d51ac)" * (cast_expression "(code **)(pcVar37 + 0x3d51ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d51ac)" ( (binary_expression "pcVar37 + 0x3d51ac" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar9,iVar2 + 0x50)" ( identifier , identifier , (binary_expression "iVar2 + 0x50" identifier + number_literal) )))) ;)) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) }))) (expression_statement "*piVar9 = *(int *)(iVar2 + 0x50);" (assignment_expression "*piVar9 = *(int *)(iVar2 + 0x50)" (pointer_expression "*piVar9" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x50)" * (cast_expression "(int *)(iVar2 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x50)" ( (binary_expression "iVar2 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9 + 1;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9 + 1" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (return_statement "return SUB41(piVar9,0);" return (call_expression "SUB41(piVar9,0)" identifier (argument_list "(piVar9,0)" ( identifier , number_literal ))) ;) })))) (expression_statement "iVar20 = 0xb6;" (assignment_expression "iVar20 = 0xb6" identifier = number_literal) ;) (expression_statement "pcVar35 = *(code **)(pcVar37 + 0x3d5078);" (assignment_expression "pcVar35 = *(code **)(pcVar37 + 0x3d5078)" identifier = (pointer_expression "*(code **)(pcVar37 + 0x3d5078)" * (cast_expression "(code **)(pcVar37 + 0x3d5078)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d5078)" ( (binary_expression "pcVar37 + 0x3d5078" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0;" (assignment_expression "iVar2 = *(int *)(pcVar37 + 0x3d48c4) + 0x39f0" identifier = (binary_expression "*(int *)(pcVar37 + 0x3d48c4) + 0x39f0" (pointer_expression "*(int *)(pcVar37 + 0x3d48c4)" * (cast_expression "(int *)(pcVar37 + 0x3d48c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d48c4)" ( (binary_expression "pcVar37 + 0x3d48c4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288);" (call_expression "(*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288)" (parenthesized_expression "(*pcVar35)" ( (pointer_expression "*pcVar35" * identifier) )) (argument_list "(iVar2,0xb6,*(int *)(pcVar37 + 0x3d5098) + -0x3288)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d5098) + -0x3288" (pointer_expression "*(int *)(pcVar37 + 0x3d5098)" * (cast_expression "(int *)(pcVar37 + 0x3d5098)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d5098)" ( (binary_expression "pcVar37 + 0x3d5098" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x50) == 0)" ( (binary_expression "*(int *)(iVar2 + 0x50) == 0" (pointer_expression "*(int *)(iVar2 + 0x50)" * (cast_expression "(int *)(iVar2 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x50)" ( (binary_expression "iVar2 + 0x50" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                (**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);\n              }" { (expression_statement "(**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270);" (call_expression "(**(code **)(pcVar35 + 0x3d4f84))\n                          (*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d4f84))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d4f84)" * (pointer_expression "*(code **)(pcVar35 + 0x3d4f84)" * (cast_expression "(code **)(pcVar35 + 0x3d4f84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d4f84)" ( (binary_expression "pcVar35 + 0x3d4f84" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + 0x3d47d0) + 0x37c0,0x88,\n                           *(int *)(pcVar35 + 0x3d4fa4) + -0x3270)" ( (binary_expression "*(int *)(pcVar35 + 0x3d47d0) + 0x37c0" (pointer_expression "*(int *)(pcVar35 + 0x3d47d0)" * (cast_expression "(int *)(pcVar35 + 0x3d47d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d47d0)" ( (binary_expression "pcVar35 + 0x3d47d0" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + 0x3d4fa4) + -0x3270" (pointer_expression "*(int *)(pcVar35 + 0x3d4fa4)" * (cast_expression "(int *)(pcVar35 + 0x3d4fa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d4fa4)" ( (binary_expression "pcVar35 + 0x3d4fa4" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" else (if_statement "if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x10) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x10) != 0" (pointer_expression "*(int *)(iVar2 + 0x10)" * (cast_expression "(int *)(iVar2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x10)" ( (binary_expression "iVar2 + 0x10" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" { (expression_statement "piVar15 = *(int **)(iVar20 + 4);" (assignment_expression "piVar15 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar16 = *(int **)(iVar20 + 8);" (assignment_expression "piVar16 = *(int **)(iVar20 + 8)" identifier = (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) ;) (expression_statement "piVar9 = piVar15 + 1;" (assignment_expression "piVar9 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (if_statement "if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" if (parenthesized_expression "(piVar15 == piVar16)" ( (binary_expression "piVar15 == piVar16" identifier == identifier) )) (compound_statement "{\n                  (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;\n                }" { (expression_statement "(**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10);" (call_expression "(**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar16,iVar2 + 0x10)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d50b8))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d50b8)" * (pointer_expression "*(code **)(pcVar35 + 0x3d50b8)" * (cast_expression "(code **)(pcVar35 + 0x3d50b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d50b8)" ( (binary_expression "pcVar35 + 0x3d50b8" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar16,iVar2 + 0x10)" ( identifier , identifier , (binary_expression "iVar2 + 0x10" identifier + number_literal) ))) ;) (expression_statement "piVar9 = *(int **)(iVar20 + 4);" (assignment_expression "piVar9 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (if_statement "if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecb44;" if (parenthesized_expression "(piVar9 == *(int **)(iVar20 + 8))" ( (binary_expression "piVar9 == *(int **)(iVar20 + 8)" identifier == (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000ecb44;" goto statement_identifier ;)) }) (else_clause "else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" else (compound_statement "{\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" { (expression_statement "*piVar15 = *(int *)(iVar2 + 0x10);" (assignment_expression "*piVar15 = *(int *)(iVar2 + 0x10)" (pointer_expression "*piVar15" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x10)" * (cast_expression "(int *)(iVar2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x10)" ( (binary_expression "iVar2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = identifier) ;) (if_statement "if (piVar9 == piVar16) {\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }" if (parenthesized_expression "(piVar9 == piVar16)" ( (binary_expression "piVar9 == piVar16" identifier == identifier) )) (compound_statement "{\nLAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }" { (labeled_statement "LAB_000ecb44:\n                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);" statement_identifier : comment comment (expression_statement "uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50);" (assignment_expression "uVar11 = (**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50)" identifier = (call_expression "(**(code **)(pcVar35 + 0x3d50b8))(iVar20,piVar9,iVar2 + 0x50)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d50b8))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d50b8)" * (pointer_expression "*(code **)(pcVar35 + 0x3d50b8)" * (cast_expression "(code **)(pcVar35 + 0x3d50b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d50b8)" ( (binary_expression "pcVar35 + 0x3d50b8" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar9,iVar2 + 0x50)" ( identifier , identifier , (binary_expression "iVar2 + 0x50" identifier + number_literal) )))) ;)) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) }))) (expression_statement "*piVar9 = *(int *)(iVar2 + 0x50);" (assignment_expression "*piVar9 = *(int *)(iVar2 + 0x50)" (pointer_expression "*piVar9" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x50)" * (cast_expression "(int *)(iVar2 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x50)" ( (binary_expression "iVar2 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9 + 1;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9 + 1" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (return_statement "return SUB41(piVar9,0);" return (call_expression "SUB41(piVar9,0)" identifier (argument_list "(piVar9,0)" ( identifier , number_literal ))) ;) })))) (expression_statement "iVar20 = 0xb6;" (assignment_expression "iVar20 = 0xb6" identifier = number_literal) ;) (expression_statement "pcVar37 = *(code **)(pcVar35 + 0x3d4f84);" (assignment_expression "pcVar37 = *(code **)(pcVar35 + 0x3d4f84)" identifier = (pointer_expression "*(code **)(pcVar35 + 0x3d4f84)" * (cast_expression "(code **)(pcVar35 + 0x3d4f84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d4f84)" ( (binary_expression "pcVar35 + 0x3d4f84" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0;" (assignment_expression "iVar2 = *(int *)(pcVar35 + 0x3d47d0) + 0x39f0" identifier = (binary_expression "*(int *)(pcVar35 + 0x3d47d0) + 0x39f0" (pointer_expression "*(int *)(pcVar35 + 0x3d47d0)" * (cast_expression "(int *)(pcVar35 + 0x3d47d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d47d0)" ( (binary_expression "pcVar35 + 0x3d47d0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288);" (call_expression "(*pcVar37)(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288)" (parenthesized_expression "(*pcVar37)" ( (pointer_expression "*pcVar37" * identifier) )) (argument_list "(iVar2,0xb6,*(int *)(pcVar35 + 0x3d4fa4) + -0x3288)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar35 + 0x3d4fa4) + -0x3288" (pointer_expression "*(int *)(pcVar35 + 0x3d4fa4)" * (cast_expression "(int *)(pcVar35 + 0x3d4fa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d4fa4)" ( (binary_expression "pcVar35 + 0x3d4fa4" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar2 + 0x50) == 0) {\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }\n              else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x50) == 0)" ( (binary_expression "*(int *)(iVar2 + 0x50) == 0" (pointer_expression "*(int *)(iVar2 + 0x50)" * (cast_expression "(int *)(iVar2 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x50)" ( (binary_expression "iVar2 + 0x50" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                (**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);\n              }" { (expression_statement "(**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74);" (call_expression "(**(code **)(pcVar37 + 0x3d4e90))\n                          (*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d4e90))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d4e90)" * (pointer_expression "*(code **)(pcVar37 + 0x3d4e90)" * (cast_expression "(code **)(pcVar37 + 0x3d4e90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d4e90)" ( (binary_expression "pcVar37 + 0x3d4e90" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d46dc) + 0x37c0,0x88,\n                           *(int *)(pcVar37 + 0x3d4eb0) + -0x4e74)" ( (binary_expression "*(int *)(pcVar37 + 0x3d46dc) + 0x37c0" (pointer_expression "*(int *)(pcVar37 + 0x3d46dc)" * (cast_expression "(int *)(pcVar37 + 0x3d46dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d46dc)" ( (binary_expression "pcVar37 + 0x3d46dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d4eb0) + -0x4e74" (pointer_expression "*(int *)(pcVar37 + 0x3d4eb0)" * (cast_expression "(int *)(pcVar37 + 0x3d4eb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d4eb0)" ( (binary_expression "pcVar37 + 0x3d4eb0" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" else (if_statement "if (*(int *)(iVar2 + 0x10) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x10) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x10) != 0" (pointer_expression "*(int *)(iVar2 + 0x10)" * (cast_expression "(int *)(iVar2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x10)" ( (binary_expression "iVar2 + 0x10" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x50);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" { (expression_statement "piVar15 = *(int **)(iVar20 + 4);" (assignment_expression "piVar15 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar16 = *(int **)(iVar20 + 8);" (assignment_expression "piVar16 = *(int **)(iVar20 + 8)" identifier = (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) ;) (expression_statement "piVar9 = piVar15 + 1;" (assignment_expression "piVar9 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (if_statement "if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" if (parenthesized_expression "(piVar15 == piVar16)" ( (binary_expression "piVar15 == piVar16" identifier == identifier) )) (compound_statement "{\n                  (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;\n                }" { (expression_statement "(**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10);" (call_expression "(**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar16,iVar2 + 0x10)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d4fc4))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d4fc4)" * (pointer_expression "*(code **)(pcVar37 + 0x3d4fc4)" * (cast_expression "(code **)(pcVar37 + 0x3d4fc4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d4fc4)" ( (binary_expression "pcVar37 + 0x3d4fc4" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar16,iVar2 + 0x10)" ( identifier , identifier , (binary_expression "iVar2 + 0x10" identifier + number_literal) ))) ;) (expression_statement "piVar9 = *(int **)(iVar20 + 4);" (assignment_expression "piVar9 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (if_statement "if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecc38;" if (parenthesized_expression "(piVar9 == *(int **)(iVar20 + 8))" ( (binary_expression "piVar9 == *(int **)(iVar20 + 8)" identifier == (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000ecc38;" goto statement_identifier ;)) }) (else_clause "else {\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" else (compound_statement "{\n                  *piVar15 = *(int *)(iVar2 + 0x10);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }\n                }" { (expression_statement "*piVar15 = *(int *)(iVar2 + 0x10);" (assignment_expression "*piVar15 = *(int *)(iVar2 + 0x10)" (pointer_expression "*piVar15" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x10)" * (cast_expression "(int *)(iVar2 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x10)" ( (binary_expression "iVar2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = identifier) ;) (if_statement "if (piVar9 == piVar16) {\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }" if (parenthesized_expression "(piVar9 == piVar16)" ( (binary_expression "piVar9 == piVar16" identifier == identifier) )) (compound_statement "{\nLAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);\n                    return (bool)uVar11;\n                  }" { (labeled_statement "LAB_000ecc38:\n                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);" statement_identifier : comment comment (expression_statement "uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50);" (assignment_expression "uVar11 = (**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50)" identifier = (call_expression "(**(code **)(pcVar37 + 0x3d4fc4))(iVar20,piVar9,iVar2 + 0x50)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d4fc4))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d4fc4)" * (pointer_expression "*(code **)(pcVar37 + 0x3d4fc4)" * (cast_expression "(code **)(pcVar37 + 0x3d4fc4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d4fc4)" ( (binary_expression "pcVar37 + 0x3d4fc4" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar9,iVar2 + 0x50)" ( identifier , identifier , (binary_expression "iVar2 + 0x50" identifier + number_literal) )))) ;)) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) }))) (expression_statement "*piVar9 = *(int *)(iVar2 + 0x50);" (assignment_expression "*piVar9 = *(int *)(iVar2 + 0x50)" (pointer_expression "*piVar9" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x50)" * (cast_expression "(int *)(iVar2 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x50)" ( (binary_expression "iVar2 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9 + 1;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9 + 1" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (return_statement "return SUB41(piVar9,0);" return (call_expression "SUB41(piVar9,0)" identifier (argument_list "(piVar9,0)" ( identifier , number_literal ))) ;) })))) (expression_statement "iVar20 = 0xb6;" (assignment_expression "iVar20 = 0xb6" identifier = number_literal) ;) (expression_statement "pcVar35 = *(code **)(pcVar37 + 0x3d4e90);" (assignment_expression "pcVar35 = *(code **)(pcVar37 + 0x3d4e90)" identifier = (pointer_expression "*(code **)(pcVar37 + 0x3d4e90)" * (cast_expression "(code **)(pcVar37 + 0x3d4e90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d4e90)" ( (binary_expression "pcVar37 + 0x3d4e90" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0;" (assignment_expression "iVar2 = *(int *)(pcVar37 + 0x3d46dc) + 0x39f0" identifier = (binary_expression "*(int *)(pcVar37 + 0x3d46dc) + 0x39f0" (pointer_expression "*(int *)(pcVar37 + 0x3d46dc)" * (cast_expression "(int *)(pcVar37 + 0x3d46dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d46dc)" ( (binary_expression "pcVar37 + 0x3d46dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288);" (call_expression "(*pcVar35)(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288)" (parenthesized_expression "(*pcVar35)" ( (pointer_expression "*pcVar35" * identifier) )) (argument_list "(iVar2,0xb6,*(int *)(pcVar37 + 0x3d4eb0) + -0x3288)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d4eb0) + -0x3288" (pointer_expression "*(int *)(pcVar37 + 0x3d4eb0)" * (cast_expression "(int *)(pcVar37 + 0x3d4eb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d4eb0)" ( (binary_expression "pcVar37 + 0x3d4eb0" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x54) == 0)" ( (binary_expression "*(int *)(iVar2 + 0x54) == 0" (pointer_expression "*(int *)(iVar2 + 0x54)" * (cast_expression "(int *)(iVar2 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x54)" ( (binary_expression "iVar2 + 0x54" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                (**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);\n              }" { (expression_statement "(**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c);" (call_expression "(**(code **)(pcVar35 + 0x3d4d9c))\n                          (*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d4d9c))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d4d9c)" * (pointer_expression "*(code **)(pcVar35 + 0x3d4d9c)" * (cast_expression "(code **)(pcVar35 + 0x3d4d9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d4d9c)" ( (binary_expression "pcVar35 + 0x3d4d9c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar35 + 0x3d45e8) + 0x37c0,0x90,\n                           *(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c)" ( (binary_expression "*(int *)(pcVar35 + 0x3d45e8) + 0x37c0" (pointer_expression "*(int *)(pcVar35 + 0x3d45e8)" * (cast_expression "(int *)(pcVar35 + 0x3d45e8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d45e8)" ( (binary_expression "pcVar35 + 0x3d45e8" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar35 + 0x3d4dbc) + -0x3f1c" (pointer_expression "*(int *)(pcVar35 + 0x3d4dbc)" * (cast_expression "(int *)(pcVar35 + 0x3d4dbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d4dbc)" ( (binary_expression "pcVar35 + 0x3d4dbc" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" else (if_statement "if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x14) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x14) != 0" (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" { (expression_statement "piVar15 = *(int **)(iVar20 + 4);" (assignment_expression "piVar15 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar16 = *(int **)(iVar20 + 8);" (assignment_expression "piVar16 = *(int **)(iVar20 + 8)" identifier = (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) ;) (expression_statement "piVar9 = piVar15 + 1;" (assignment_expression "piVar9 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (if_statement "if (piVar15 == piVar16) {\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" if (parenthesized_expression "(piVar15 == piVar16)" ( (binary_expression "piVar15 == piVar16" identifier == identifier) )) (compound_statement "{\n                  (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;\n                }" { (expression_statement "(**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14);" (call_expression "(**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar16,iVar2 + 0x14)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d4ed0))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d4ed0)" * (pointer_expression "*(code **)(pcVar35 + 0x3d4ed0)" * (cast_expression "(code **)(pcVar35 + 0x3d4ed0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d4ed0)" ( (binary_expression "pcVar35 + 0x3d4ed0" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar16,iVar2 + 0x14)" ( identifier , identifier , (binary_expression "iVar2 + 0x14" identifier + number_literal) ))) ;) (expression_statement "piVar9 = *(int **)(iVar20 + 4);" (assignment_expression "piVar9 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (if_statement "if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ecd2c;" if (parenthesized_expression "(piVar9 == *(int **)(iVar20 + 8))" ( (binary_expression "piVar9 == *(int **)(iVar20 + 8)" identifier == (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000ecd2c;" goto statement_identifier ;)) }) (else_clause "else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" else (compound_statement "{\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" { (expression_statement "*piVar15 = *(int *)(iVar2 + 0x14);" (assignment_expression "*piVar15 = *(int *)(iVar2 + 0x14)" (pointer_expression "*piVar15" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = identifier) ;) (if_statement "if (piVar9 == piVar16) {\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }" if (parenthesized_expression "(piVar9 == piVar16)" ( (binary_expression "piVar9 == piVar16" identifier == identifier) )) (compound_statement "{\nLAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }" { (labeled_statement "LAB_000ecd2c:\n                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);" statement_identifier : comment comment (expression_statement "uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54);" (assignment_expression "uVar11 = (**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54)" identifier = (call_expression "(**(code **)(pcVar35 + 0x3d4ed0))(iVar20,piVar9,iVar2 + 0x54)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d4ed0))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d4ed0)" * (pointer_expression "*(code **)(pcVar35 + 0x3d4ed0)" * (cast_expression "(code **)(pcVar35 + 0x3d4ed0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d4ed0)" ( (binary_expression "pcVar35 + 0x3d4ed0" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar9,iVar2 + 0x54)" ( identifier , identifier , (binary_expression "iVar2 + 0x54" identifier + number_literal) )))) ;)) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) }))) (expression_statement "*piVar9 = *(int *)(iVar2 + 0x54);" (assignment_expression "*piVar9 = *(int *)(iVar2 + 0x54)" (pointer_expression "*piVar9" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x54)" * (cast_expression "(int *)(iVar2 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x54)" ( (binary_expression "iVar2 + 0x54" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9 + 1;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9 + 1" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (return_statement "return SUB41(piVar9,0);" return (call_expression "SUB41(piVar9,0)" identifier (argument_list "(piVar9,0)" ( identifier , number_literal ))) ;) })))) (expression_statement "iVar20 = 200;" (assignment_expression "iVar20 = 200" identifier = number_literal) ;) (expression_statement "pcVar37 = *(code **)(pcVar35 + 0x3d4d9c);" (assignment_expression "pcVar37 = *(code **)(pcVar35 + 0x3d4d9c)" identifier = (pointer_expression "*(code **)(pcVar35 + 0x3d4d9c)" * (cast_expression "(code **)(pcVar35 + 0x3d4d9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d4d9c)" ( (binary_expression "pcVar35 + 0x3d4d9c" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0;" (assignment_expression "iVar2 = *(int *)(pcVar35 + 0x3d45e8) + 0x39f0" identifier = (binary_expression "*(int *)(pcVar35 + 0x3d45e8) + 0x39f0" (pointer_expression "*(int *)(pcVar35 + 0x3d45e8)" * (cast_expression "(int *)(pcVar35 + 0x3d45e8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d45e8)" ( (binary_expression "pcVar35 + 0x3d45e8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258);" (call_expression "(*pcVar37)(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258)" (parenthesized_expression "(*pcVar37)" ( (pointer_expression "*pcVar37" * identifier) )) (argument_list "(iVar2,200,*(int *)(pcVar35 + 0x3d4dbc) + -0x3258)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar35 + 0x3d4dbc) + -0x3258" (pointer_expression "*(int *)(pcVar35 + 0x3d4dbc)" * (cast_expression "(int *)(pcVar35 + 0x3d4dbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar35 + 0x3d4dbc)" ( (binary_expression "pcVar35 + 0x3d4dbc" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (*(int *)(iVar2 + 0x54) == 0) {\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }\n              else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x54) == 0)" ( (binary_expression "*(int *)(iVar2 + 0x54) == 0" (pointer_expression "*(int *)(iVar2 + 0x54)" * (cast_expression "(int *)(iVar2 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x54)" ( (binary_expression "iVar2 + 0x54" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                (**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);\n              }" { (expression_statement "(**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c);" (call_expression "(**(code **)(pcVar37 + 0x3d4ca8))\n                          (*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d4ca8))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d4ca8)" * (pointer_expression "*(code **)(pcVar37 + 0x3d4ca8)" * (cast_expression "(code **)(pcVar37 + 0x3d4ca8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d4ca8)" ( (binary_expression "pcVar37 + 0x3d4ca8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar37 + 0x3d44f4) + 0x37c0,0x90,\n                           *(int *)(pcVar37 + 0x3d4cc8) + -0x467c)" ( (binary_expression "*(int *)(pcVar37 + 0x3d44f4) + 0x37c0" (pointer_expression "*(int *)(pcVar37 + 0x3d44f4)" * (cast_expression "(int *)(pcVar37 + 0x3d44f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d44f4)" ( (binary_expression "pcVar37 + 0x3d44f4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d4cc8) + -0x467c" (pointer_expression "*(int *)(pcVar37 + 0x3d4cc8)" * (cast_expression "(int *)(pcVar37 + 0x3d4cc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d4cc8)" ( (binary_expression "pcVar37 + 0x3d4cc8" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" else (if_statement "if (*(int *)(iVar2 + 0x14) != 0) {\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" if (parenthesized_expression "(*(int *)(iVar2 + 0x14) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x14) != 0" (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                piVar15 = *(int **)(iVar20 + 4);\n                piVar16 = *(int **)(iVar20 + 8);\n                piVar9 = piVar15 + 1;\n                if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }\n                *piVar9 = *(int *)(iVar2 + 0x54);\n                *(int **)(iVar20 + 4) = piVar9 + 1;\n                return SUB41(piVar9,0);\n              }" { (expression_statement "piVar15 = *(int **)(iVar20 + 4);" (assignment_expression "piVar15 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar16 = *(int **)(iVar20 + 8);" (assignment_expression "piVar16 = *(int **)(iVar20 + 8)" identifier = (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) ;) (expression_statement "piVar9 = piVar15 + 1;" (assignment_expression "piVar9 = piVar15 + 1" identifier = (binary_expression "piVar15 + 1" identifier + number_literal)) ;) (if_statement "if (piVar15 == piVar16) {\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }\n                else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" if (parenthesized_expression "(piVar15 == piVar16)" ( (binary_expression "piVar15 == piVar16" identifier == identifier) )) (compound_statement "{\n                  (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);\n                  piVar9 = *(int **)(iVar20 + 4);\n                  if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;\n                }" { (expression_statement "(**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14);" (call_expression "(**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar16,iVar2 + 0x14)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d4ddc))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d4ddc)" * (pointer_expression "*(code **)(pcVar37 + 0x3d4ddc)" * (cast_expression "(code **)(pcVar37 + 0x3d4ddc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d4ddc)" ( (binary_expression "pcVar37 + 0x3d4ddc" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar16,iVar2 + 0x14)" ( identifier , identifier , (binary_expression "iVar2 + 0x14" identifier + number_literal) ))) ;) (expression_statement "piVar9 = *(int **)(iVar20 + 4);" (assignment_expression "piVar9 = *(int **)(iVar20 + 4)" identifier = (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) ))))) ;) (if_statement "if (piVar9 == *(int **)(iVar20 + 8)) goto LAB_000ece20;" if (parenthesized_expression "(piVar9 == *(int **)(iVar20 + 8))" ( (binary_expression "piVar9 == *(int **)(iVar20 + 8)" identifier == (pointer_expression "*(int **)(iVar20 + 8)" * (cast_expression "(int **)(iVar20 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 8)" ( (binary_expression "iVar20 + 8" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000ece20;" goto statement_identifier ;)) }) (else_clause "else {\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" else (compound_statement "{\n                  *piVar15 = *(int *)(iVar2 + 0x14);\n                  *(int **)(iVar20 + 4) = piVar9;\n                  if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }\n                }" { (expression_statement "*piVar15 = *(int *)(iVar2 + 0x14);" (assignment_expression "*piVar15 = *(int *)(iVar2 + 0x14)" (pointer_expression "*piVar15" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x14)" * (cast_expression "(int *)(iVar2 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = identifier) ;) (if_statement "if (piVar9 == piVar16) {\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }" if (parenthesized_expression "(piVar9 == piVar16)" ( (binary_expression "piVar9 == piVar16" identifier == identifier) )) (compound_statement "{\nLAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);\n                    return (bool)uVar11;\n                  }" { (labeled_statement "LAB_000ece20:\n                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                    uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);" statement_identifier : comment comment (expression_statement "uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54);" (assignment_expression "uVar11 = (**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54)" identifier = (call_expression "(**(code **)(pcVar37 + 0x3d4ddc))(iVar20,piVar9,iVar2 + 0x54)" (parenthesized_expression "(**(code **)(pcVar37 + 0x3d4ddc))" ( (pointer_expression "**(code **)(pcVar37 + 0x3d4ddc)" * (pointer_expression "*(code **)(pcVar37 + 0x3d4ddc)" * (cast_expression "(code **)(pcVar37 + 0x3d4ddc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d4ddc)" ( (binary_expression "pcVar37 + 0x3d4ddc" identifier + number_literal) ))))) )) (argument_list "(iVar20,piVar9,iVar2 + 0x54)" ( identifier , identifier , (binary_expression "iVar2 + 0x54" identifier + number_literal) )))) ;)) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) }))) (expression_statement "*piVar9 = *(int *)(iVar2 + 0x54);" (assignment_expression "*piVar9 = *(int *)(iVar2 + 0x54)" (pointer_expression "*piVar9" * identifier) = (pointer_expression "*(int *)(iVar2 + 0x54)" * (cast_expression "(int *)(iVar2 + 0x54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x54)" ( (binary_expression "iVar2 + 0x54" identifier + number_literal) ))))) ;) (expression_statement "*(int **)(iVar20 + 4) = piVar9 + 1;" (assignment_expression "*(int **)(iVar20 + 4) = piVar9 + 1" (pointer_expression "*(int **)(iVar20 + 4)" * (cast_expression "(int **)(iVar20 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar20 + 4)" ( (binary_expression "iVar20 + 4" identifier + number_literal) )))) = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (return_statement "return SUB41(piVar9,0);" return (call_expression "SUB41(piVar9,0)" identifier (argument_list "(piVar9,0)" ( identifier , number_literal ))) ;) })))) (expression_statement "iVar2 = 200;" (assignment_expression "iVar2 = 200" identifier = number_literal) ;) (expression_statement "pcVar35 = *(code **)(pcVar37 + 0x3d4ca8);" (assignment_expression "pcVar35 = *(code **)(pcVar37 + 0x3d4ca8)" identifier = (pointer_expression "*(code **)(pcVar37 + 0x3d4ca8)" * (cast_expression "(code **)(pcVar37 + 0x3d4ca8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar37 + 0x3d4ca8)" ( (binary_expression "pcVar37 + 0x3d4ca8" identifier + number_literal) ))))) ;) (expression_statement "piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0);" (assignment_expression "piVar9 = (int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0)" identifier = (cast_expression "(int *)(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar37 + 0x3d44f4) + 0x39f0)" ( (binary_expression "*(int *)(pcVar37 + 0x3d44f4) + 0x39f0" (pointer_expression "*(int *)(pcVar37 + 0x3d44f4)" * (cast_expression "(int *)(pcVar37 + 0x3d44f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d44f4)" ( (binary_expression "pcVar37 + 0x3d44f4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258);" (call_expression "(*pcVar35)(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258)" (parenthesized_expression "(*pcVar35)" ( (pointer_expression "*pcVar35" * identifier) )) (argument_list "(piVar9,200,*(int *)(pcVar37 + 0x3d4cc8) + -0x3258)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar37 + 0x3d4cc8) + -0x3258" (pointer_expression "*(int *)(pcVar37 + 0x3d4cc8)" * (cast_expression "(int *)(pcVar37 + 0x3d4cc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar37 + 0x3d4cc8)" ( (binary_expression "pcVar37 + 0x3d4cc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "*piVar9 = (int)(piVar9 + 2);" (assignment_expression "*piVar9 = (int)(piVar9 + 2)" (pointer_expression "*piVar9" * identifier) = (cast_expression "(int)(piVar9 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar9 + 2)" ( (binary_expression "piVar9 + 2" identifier + number_literal) )))) ;) (if_statement "if (iVar2 != 0) {\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n                iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);\n                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n                uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);\n                return (bool)uVar11;\n              }" { (expression_statement "iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2);" (assignment_expression "iVar20 = (**(code **)(pcVar35 + 0x3d8d20))(iVar2)" identifier = (call_expression "(**(code **)(pcVar35 + 0x3d8d20))(iVar2)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d8d20))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d8d20)" * (pointer_expression "*(code **)(pcVar35 + 0x3d8d20)" * (cast_expression "(code **)(pcVar35 + 0x3d8d20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d8d20)" ( (binary_expression "pcVar35 + 0x3d8d20" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) ;) comment comment (expression_statement "uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0);" (assignment_expression "uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0)" identifier = (call_expression "(**(code **)(pcVar35 + 0x3d4cec))(piVar9,iVar2,iVar2 + iVar20,0)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d4cec))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d4cec)" * (pointer_expression "*(code **)(pcVar35 + 0x3d4cec)" * (cast_expression "(code **)(pcVar35 + 0x3d4cec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d4cec)" ( (binary_expression "pcVar35 + 0x3d4cec" identifier + number_literal) ))))) )) (argument_list "(piVar9,iVar2,iVar2 + iVar20,0)" ( identifier , identifier , (binary_expression "iVar2 + iVar20" identifier + identifier) , number_literal )))) ;) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) comment comment (expression_statement "uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9);" (assignment_expression "uVar11 = (**(code **)(pcVar35 + 0x3d4cec))(piVar9)" identifier = (call_expression "(**(code **)(pcVar35 + 0x3d4cec))(piVar9)" (parenthesized_expression "(**(code **)(pcVar35 + 0x3d4cec))" ( (pointer_expression "**(code **)(pcVar35 + 0x3d4cec)" * (pointer_expression "*(code **)(pcVar35 + 0x3d4cec)" * (cast_expression "(code **)(pcVar35 + 0x3d4cec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d4cec)" ( (binary_expression "pcVar35 + 0x3d4cec" identifier + number_literal) ))))) )) (argument_list "(piVar9)" ( identifier )))) ;) (return_statement "return (bool)uVar11;" return (cast_expression "(bool)uVar11" ( (type_descriptor "bool" primitive_type) ) identifier) ;) })) (expression_statement "unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48);" (assignment_expression "unaff_s2 = *(Relocate **)(pcVar31 + 0x3d8b48)" identifier = (pointer_expression "*(Relocate **)(pcVar31 + 0x3d8b48)" * (cast_expression "(Relocate **)(pcVar31 + 0x3d8b48)" ( (type_descriptor "Relocate **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d8b48)" ( (binary_expression "pcVar31 + 0x3d8b48" identifier + number_literal) ))))) ;) (expression_statement "pRVar12 = this;" (assignment_expression "pRVar12 = this" identifier = identifier) ;) (if_statement "if (this != (Relocate *)0x0) {\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }" if (parenthesized_expression "(this != (Relocate *)0x0)" ( (binary_expression "this != (Relocate *)0x0" identifier != (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              unaff_s5 = (Relocate *)0x0;\n              unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);\n            }" { (expression_statement "unaff_s5 = (Relocate *)0x0;" (assignment_expression "unaff_s5 = (Relocate *)0x0" identifier = (cast_expression "(Relocate *)0x0" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10);" (assignment_expression "unaff_s8 = *(_func_int_varargs **)(pcVar31 + 0x3d8b10)" identifier = (pointer_expression "*(_func_int_varargs **)(pcVar31 + 0x3d8b10)" * (cast_expression "(_func_int_varargs **)(pcVar31 + 0x3d8b10)" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar31 + 0x3d8b10)" ( (binary_expression "pcVar31 + 0x3d8b10" identifier + number_literal) ))))) ;) (expression_statement "unaff_s7 = &uStack_90;" (assignment_expression "unaff_s7 = &uStack_90" identifier = (pointer_expression "&uStack_90" & identifier)) ;) (do_statement "do {\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              } while (this != unaff_s5);" do (compound_statement "{\n                while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }\n                pRStack_9c = (Relocate *)*puStack_38;\n                uStack_a0 = 0;\n                iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);\n                if (iVar2 != 0) goto LAB_000e90cc;\nLAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                puStack_38 = puStack_38 + 3;\n                pRVar12 = this;\n              }" { (while_statement "while (uVar5 == 0) {\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }" while (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000e90cc:\n                  pcVar34 = pcStack_98;\n                  pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);\n                  if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\nLAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                  puStack_38 = puStack_38 + 3;\n                  pRVar12 = this;\n                  if (this == unaff_s5) goto LAB_000e91d0;\n                }" { (labeled_statement "LAB_000e90cc:\n                  pcVar34 = pcStack_98;" statement_identifier : (expression_statement "pcVar34 = pcStack_98;" (assignment_expression "pcVar34 = pcStack_98" identifier = identifier) ;)) (expression_statement "pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8);" (assignment_expression "pRVar12 = (Relocate *)((uint)puStack_38[1] >> 8)" identifier = (cast_expression "(Relocate *)((uint)puStack_38[1] >> 8)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)puStack_38[1] >> 8)" ( (binary_expression "(uint)puStack_38[1] >> 8" (cast_expression "(uint)puStack_38[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puStack_38[1]" identifier [ number_literal ])) >> number_literal) )))) ;) (if_statement "if (pRVar12 < pRStack_28) {\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }" if (parenthesized_expression "(pRVar12 < pRStack_28)" ( (binary_expression "pRVar12 < pRStack_28" identifier < identifier) )) (compound_statement "{\n                    in_t1 = (Relocate *)((int)pRVar12 * 0x10);\n                    if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }\n                    puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);\n                    uVar7 = (uint)*(ushort *)(puVar29 + 0xe);\n                    if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }\n                    pcVar34 = pcStack_98;\n                    if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }\n                    p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];\n                    if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;\n                    uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }" { (expression_statement "in_t1 = (Relocate *)((int)pRVar12 * 0x10);" (assignment_expression "in_t1 = (Relocate *)((int)pRVar12 * 0x10)" identifier = (cast_expression "(Relocate *)((int)pRVar12 * 0x10)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pRVar12 * 0x10)" ( (binary_expression "(int)pRVar12 * 0x10" (cast_expression "(int)pRVar12" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (iStack_24 == 0) {\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }" if (parenthesized_expression "(iStack_24 == 0)" ( (binary_expression "iStack_24 == 0" identifier == number_literal) )) (compound_statement "{\n                      (**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);\nLAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);\n                      goto LAB_000e95f4;\n                    }" { (expression_statement "(**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080);" (call_expression "(**(code **)(pcStack_98 + -0x7810))\n                                (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7810)" * (pointer_expression "*(code **)(pcStack_98 + -0x7810)" * (cast_expression "(code **)(pcStack_98 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7810)" ( (binary_expression "pcStack_98 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_98 + -0x77f0) + -0x5080)" ( (binary_expression "*(int *)(pcStack_98 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_98 + -0x7fc4)" * (cast_expression "(int *)(pcStack_98 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x7fc4)" ( (binary_expression "pcStack_98 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_98 + -0x77f0) + -0x5080" (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000e95bc:\n                      iVar2 = *(int *)(pcVar34 + -0x77f0);" statement_identifier : (expression_statement "iVar2 = *(int *)(pcVar34 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcVar34 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcVar34 + -0x77f0)" * (cast_expression "(int *)(pcVar34 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + -0x77f0)" ( (binary_expression "pcVar34 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000e95c0:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);" statement_identifier : (expression_statement "(**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);" (call_expression "(**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068)" (parenthesized_expression "(**(code **)(pcVar34 + -0x7810))" ( (pointer_expression "**(code **)(pcVar34 + -0x7810)" * (pointer_expression "*(code **)(pcVar34 + -0x7810)" * (cast_expression "(code **)(pcVar34 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar34 + -0x7810)" ( (binary_expression "pcVar34 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068)" ( (binary_expression "*(int *)(pcVar34 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar34 + -0x7fc4)" * (cast_expression "(int *)(pcVar34 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + -0x7fc4)" ( (binary_expression "pcVar34 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x5068" identifier + number_literal) ))) ;)) (labeled_statement "LAB_000e95d8:\n                      (**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar34 + -0x7810))\n                                (*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar34 + -0x7810))" ( (pointer_expression "**(code **)(pcVar34 + -0x7810)" * (pointer_expression "*(code **)(pcVar34 + -0x7810)" * (cast_expression "(code **)(pcVar34 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar34 + -0x7810)" ( (binary_expression "pcVar34 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar34 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar34 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar34 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar34 + -0x7fc4)" * (cast_expression "(int *)(pcVar34 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + -0x7fc4)" ( (binary_expression "pcVar34 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar34 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar34 + -0x77f0)" * (cast_expression "(int *)(pcVar34 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar34 + -0x77f0)" ( (binary_expression "pcVar34 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (goto_statement "goto LAB_000e95f4;" goto statement_identifier ;) })) (expression_statement "puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24);" (assignment_expression "puVar29 = (undefined1 *)((int)&in_t1->calculated_value_ + iStack_24)" identifier = (cast_expression "(undefined1 *)((int)&in_t1->calculated_value_ + iStack_24)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&in_t1->calculated_value_ + iStack_24)" ( (binary_expression "(int)&in_t1->calculated_value_ + iStack_24" (cast_expression "(int)&in_t1->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&in_t1->calculated_value_" & (field_expression "in_t1->calculated_value_" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "uVar7 = (uint)*(ushort *)(puVar29 + 0xe);" (assignment_expression "uVar7 = (uint)*(ushort *)(puVar29 + 0xe)" identifier = (binary_expression "(uint)*(ushort *)(puVar29 + 0xe)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(puVar29 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xe)" ( (binary_expression "puVar29 + 0xe" identifier + number_literal) ))))) ;) (if_statement "if (uVar7 < 0xff00) {\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }\n                    else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }" if (parenthesized_expression "(uVar7 < 0xff00)" ( (binary_expression "uVar7 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar34 = pcStack_98;\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;\n                      if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;\n                      bVar1 = puVar29[0xc];\n                    }" { (labeled_statement "LAB_000e92ac:\n                      if (uVar7 == 0) goto LAB_000e910c;" statement_identifier : (if_statement "if (uVar7 == 0) goto LAB_000e910c;" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e910c;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar34 = pcStack_98;" (assignment_expression "pcVar34 = pcStack_98" identifier = identifier) ;) (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e962c;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e962c;" goto statement_identifier ;)) (if_statement "if (*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)\n                      goto LAB_000e91a4;" if (parenthesized_expression "(*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0)" ( (binary_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4) == 0" (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e91a4;" goto statement_identifier ;)) (expression_statement "bVar1 = puVar29[0xc];" (assignment_expression "bVar1 = puVar29[0xc]" identifier = (subscript_expression "puVar29[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }" else (compound_statement "{\n                      if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }\nLAB_000e910c:\n                      bVar1 = puVar29[0xc];\n                    }" { (if_statement "if (uVar7 == 0xffff) {\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }" if (parenthesized_expression "(uVar7 == 0xffff)" ( (binary_expression "uVar7 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = *(int *)&pOVar22->entsize_;\n                        pRStack_88 = pRVar12;\n                        pRStack_84 = in_t1;\n                        puStack_80 = puVar29;\n                        if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }\n                        uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);\n                        pRVar12 = pRStack_88;\n                        in_t1 = pRStack_84;\n                        puVar29 = puStack_80;\n                        goto LAB_000e92ac;\n                      }" { (expression_statement "iVar2 = *(int *)&pOVar22->entsize_;" (assignment_expression "iVar2 = *(int *)&pOVar22->entsize_" identifier = (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier))))) ;) (expression_statement "pRStack_88 = pRVar12;" (assignment_expression "pRStack_88 = pRVar12" identifier = identifier) ;) (expression_statement "pRStack_84 = in_t1;" (assignment_expression "pRStack_84 = in_t1" identifier = identifier) ;) (expression_statement "puStack_80 = puVar29;" (assignment_expression "puStack_80 = puVar29" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                          iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);\n                          *(int *)&pOVar22->entsize_ = iVar2;\n                        }" { (expression_statement "iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);" (assignment_expression "iVar2 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22)" identifier = (call_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22)" (parenthesized_expression "(*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])" ( (pointer_expression "*(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" * (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x1b]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) )) (argument_list "(pOVar22)" ( identifier )))) ;) (expression_statement "*(int *)&pOVar22->entsize_ = iVar2;" (assignment_expression "*(int *)&pOVar22->entsize_ = iVar2" (pointer_expression "*(int *)&pOVar22->entsize_" * (cast_expression "(int *)&pOVar22->entsize_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->entsize_" & (field_expression "pOVar22->entsize_" identifier -> field_identifier)))) = identifier) ;) })) (expression_statement "uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88);" (assignment_expression "uVar7 = (**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x7790))(iVar2,pOVar22,pRStack_88)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7790)" * (pointer_expression "*(code **)(pcStack_98 + -0x7790)" * (cast_expression "(code **)(pcStack_98 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7790)" ( (binary_expression "pcStack_98 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,pOVar22,pRStack_88)" ( identifier , identifier , identifier )))) ;) (expression_statement "pRVar12 = pRStack_88;" (assignment_expression "pRVar12 = pRStack_88" identifier = identifier) ;) (expression_statement "in_t1 = pRStack_84;" (assignment_expression "in_t1 = pRStack_84" identifier = identifier) ;) (expression_statement "puVar29 = puStack_80;" (assignment_expression "puVar29 = puStack_80" identifier = identifier) ;) (goto_statement "goto LAB_000e92ac;" goto statement_identifier ;) })) (labeled_statement "LAB_000e910c:\n                      bVar1 = puVar29[0xc];" statement_identifier : (expression_statement "bVar1 = puVar29[0xc];" (assignment_expression "bVar1 = puVar29[0xc]" identifier = (subscript_expression "puVar29[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar34 = pcStack_98;" (assignment_expression "pcVar34 = pcStack_98" identifier = identifier) ;) (if_statement "if ((bVar1 & 0xf) != 3) {\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }" if (parenthesized_expression "((bVar1 & 0xf) != 3)" ( (binary_expression "(bVar1 & 0xf) != 3" (parenthesized_expression "(bVar1 & 0xf)" ( (binary_expression "bVar1 & 0xf" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }\n                      goto LAB_000e95c0;\n                    }" { (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (if_statement "if (pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)) {\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }" if (parenthesized_expression "(pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4))" ( (binary_expression "pRVar12 < (Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)" identifier < (cast_expression "(Relocate *)\n                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4)" ( (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_\n                                    >> 4" (binary_expression "*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_" (pointer_expression "*(int *)&pOVar22->field_0xec" * (cast_expression "(int *)&pOVar22->field_0xec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->field_0xec" & (field_expression "pOVar22->field_0xec" identifier -> field_identifier)))) - (cast_expression "(int)pOVar22->free_space_fill_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier))) >> number_literal) )))) )) (compound_statement "{\n                        piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);\n                        if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }\n                        *piVar9 = -2;\n                        uStack_90 = uStack_90 & 0xffffff;\n                        (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                        goto LAB_000e90a8;\n                      }" { (expression_statement "piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);" (assignment_expression "piVar9 = (int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill)" identifier = (cast_expression "(int *)((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill)" ( (binary_expression "(int)&in_t1->calculated_value_ +\n                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill" (cast_expression "(int)&in_t1->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&in_t1->calculated_value_" & (field_expression "in_t1->calculated_value_" identifier -> field_identifier))) + (cast_expression "(int)&pOVar22->free_space_fill_->_vptr_Output_fill" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar22->free_space_fill_->_vptr_Output_fill" & (field_expression "pOVar22->free_space_fill_->_vptr_Output_fill" (field_expression "pOVar22->free_space_fill_" identifier -> field_identifier) -> field_identifier)))) )))) ;) (if_statement "if ((*piVar9 != 0) && (*piVar9 != -2)) {\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }" if (parenthesized_expression "((*piVar9 != 0) && (*piVar9 != -2))" ( (binary_expression "(*piVar9 != 0) && (*piVar9 != -2)" (parenthesized_expression "(*piVar9 != 0)" ( (binary_expression "*piVar9 != 0" (pointer_expression "*piVar9" * identifier) != number_literal) )) && (parenthesized_expression "(*piVar9 != -2)" ( (binary_expression "*piVar9 != -2" (pointer_expression "*piVar9" * identifier) != number_literal) ))) )) (compound_statement "{\n                          iVar20 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                          (**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);\n                        }" { (expression_statement "iVar20 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar20 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e9238:\n                          piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);" statement_identifier : (expression_statement "piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);" (assignment_expression "piVar9 = (int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" identifier = (cast_expression "(int *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" ( (binary_expression "*(int *)(pcStack_98 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_98 + -0x7fc4)" * (cast_expression "(int *)(pcStack_98 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x7fc4)" ( (binary_expression "pcStack_98 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;)) (expression_statement "(**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0);" (call_expression "(**(code **)(pcStack_98 + -0x7810))(piVar9,0x71f,iVar20 + -0x48c0)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7810)" * (pointer_expression "*(code **)(pcStack_98 + -0x7810)" * (cast_expression "(code **)(pcStack_98 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7810)" ( (binary_expression "pcStack_98 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(piVar9,0x71f,iVar20 + -0x48c0)" ( identifier , number_literal , (binary_expression "iVar20 + -0x48c0" identifier + number_literal) ))) ;) })) (expression_statement "*piVar9 = -2;" (assignment_expression "*piVar9 = -2" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*(code *)unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*(code *)unaff_s2)" ( (pointer_expression "*(code *)unaff_s2" * (cast_expression "(code *)unaff_s2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_000e90a8;" goto statement_identifier ;) })) (goto_statement "goto LAB_000e95c0;" goto statement_identifier ;) })) (expression_statement "p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];" (assignment_expression "p_Var32 = (pOVar22->super_Output_data)._vptr_Output_data[0x18]" identifier = (subscript_expression "(pOVar22->super_Output_data)._vptr_Output_data[0x18]" (field_expression "(pOVar22->super_Output_data)._vptr_Output_data" (parenthesized_expression "(pOVar22->super_Output_data)" ( (field_expression "pOVar22->super_Output_data" identifier -> field_identifier) )) . field_identifier) [ number_literal ])) ;) (if_statement "if (p_Var32 == unaff_s8) {\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(p_Var32 == unaff_s8)" ( (binary_expression "p_Var32 == unaff_s8" identifier == identifier) )) (compound_statement "{\n                      if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;\n                      iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7) goto LAB_000e95d8;" if (parenthesized_expression "((uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7)" ( (binary_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)\n                          <= uVar7" (call_expression "(uint)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)" ( (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2" (binary_expression "(int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_" (cast_expression "(int)pOVar22->load_address_" ( (type_descriptor "int" primitive_type) ) (field_expression "pOVar22->load_address_" identifier -> field_identifier)) - (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier))))) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e95d8;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" identifier = (pointer_expression "*(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" * (cast_expression "(int *)(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)&pOVar22->load_address_ + uVar7 * 4)" ( (binary_expression "*(int *)&pOVar22->load_address_ + uVar7 * 4" (pointer_expression "*(int *)&pOVar22->load_address_" * (cast_expression "(int *)&pOVar22->load_address_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pOVar22->load_address_" & (field_expression "pOVar22->load_address_" identifier -> field_identifier)))) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (*p_Var32)(pOVar22,uVar7);\n                      uVar7 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (*p_Var32)(pOVar22,uVar7);" (assignment_expression "iVar2 = (*p_Var32)(pOVar22,uVar7)" identifier = (call_expression "(*p_Var32)(pOVar22,uVar7)" (parenthesized_expression "(*p_Var32)" ( (pointer_expression "*p_Var32" * identifier) )) (argument_list "(pOVar22,uVar7)" ( identifier , identifier )))) ;) (expression_statement "uVar7 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar7 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar7 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar7 & 0x7fffffff | 0x80000000" (binary_expression "uVar7 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_90 = CONCAT13(1,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(1,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_90._1_3_)" identifier (argument_list "(1,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*(code *)unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*(code *)unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*(code *)unaff_s2)" ( (pointer_expression "*(code *)unaff_s2" * (cast_expression "(code *)unaff_s2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }" else (compound_statement "{\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*(code *)unaff_s2)(iStack_20,unaff_s7);\n                  }" { (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*(code *)unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*(code *)unaff_s2)" ( (pointer_expression "*(code *)unaff_s2" * (cast_expression "(code *)unaff_s2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) }))) (labeled_statement "LAB_000e90a8:\n                  unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);" statement_identifier : (expression_statement "unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);" (assignment_expression "unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&unaff_s5->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&unaff_s5->calculated_value_ + 1)" ( (binary_expression "(int)&unaff_s5->calculated_value_ + 1" (cast_expression "(int)&unaff_s5->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&unaff_s5->calculated_value_" & (field_expression "unaff_s5->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;" (assignment_expression "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puStack_38 = puStack_38 + 3;" (assignment_expression "puStack_38 = puStack_38 + 3" identifier = (binary_expression "puStack_38 + 3" identifier + number_literal)) ;) (expression_statement "pRVar12 = this;" (assignment_expression "pRVar12 = this" identifier = identifier) ;) (if_statement "if (this == unaff_s5) goto LAB_000e91d0;" if (parenthesized_expression "(this == unaff_s5)" ( (binary_expression "this == unaff_s5" identifier == identifier) )) (goto_statement "goto LAB_000e91d0;" goto statement_identifier ;)) })) (expression_statement "pRStack_9c = (Relocate *)*puStack_38;" (assignment_expression "pRStack_9c = (Relocate *)*puStack_38" identifier = (cast_expression "(Relocate *)*puStack_38" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puStack_38" * identifier))) ;) (expression_statement "uStack_a0 = 0;" (assignment_expression "uStack_a0 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc);" (assignment_expression "iVar2 = (**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x76e0))\n                                  (output_section,pOVar22,pcVar35 + 0x3e03cc)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_98 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_98 + -0x76e0)" * (cast_expression "(code **)(pcStack_98 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x76e0)" ( (binary_expression "pcStack_98 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(output_section,pOVar22,pcVar35 + 0x3e03cc)" ( identifier , identifier , (binary_expression "pcVar35 + 0x3e03cc" identifier + number_literal) )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000e90cc;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000e90cc;" goto statement_identifier ;)) (labeled_statement "LAB_000e91a4:\n                uStack_90 = CONCAT13(8,uStack_90._1_3_);" statement_identifier : (expression_statement "uStack_90 = CONCAT13(8,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(8,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_90._1_3_)" identifier (argument_list "(8,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*(code *)unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*(code *)unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*(code *)unaff_s2)" ( (pointer_expression "*(code *)unaff_s2" * (cast_expression "(code *)unaff_s2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) (expression_statement "unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1);" (assignment_expression "unaff_s5 = (Relocate *)((int)&unaff_s5->calculated_value_ + 1)" identifier = (cast_expression "(Relocate *)((int)&unaff_s5->calculated_value_ + 1)" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&unaff_s5->calculated_value_ + 1)" ( (binary_expression "(int)&unaff_s5->calculated_value_ + 1" (cast_expression "(int)&unaff_s5->calculated_value_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&unaff_s5->calculated_value_" & (field_expression "unaff_s5->calculated_value_" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "puStack_38 = puStack_38 + 3;" (assignment_expression "puStack_38 = puStack_38 + 3" identifier = (binary_expression "puStack_38 + 3" identifier + number_literal)) ;) (expression_statement "pRVar12 = this;" (assignment_expression "pRVar12 = this" identifier = identifier) ;) }) while (parenthesized_expression "(this != unaff_s5)" ( (binary_expression "this != unaff_s5" identifier != identifier) )) ;) })) }))) (labeled_statement "LAB_000e91d0:\n          return SUB41(pRVar12,0);" statement_identifier : (return_statement "return SUB41(pRVar12,0);" return (call_expression "SUB41(pRVar12,0)" identifier (argument_list "(pRVar12,0)" ( identifier , number_literal ))) ;)) })) (if_statement "if (((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)) {\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }\n        else {\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }" if (parenthesized_expression "(((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage))" ( (binary_expression "((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)) ||\n           (-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)" (parenthesized_expression "((*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0))" ( (binary_expression "(*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)&sym->field_0x28 & 0xe000) != 0)" (parenthesized_expression "(*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0')" ( (binary_expression "*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9) == '\0'" (pointer_expression "*(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9)" * (cast_expression "(char *)(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9)" ( (binary_expression "*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8) + 0x52e9" (pointer_expression "*(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8)" * (cast_expression "(int *)(**(int **)(pcVar35 + 0x3d8b40) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(pcVar35 + 0x3d8b40) + 8)" ( (binary_expression "**(int **)(pcVar35 + 0x3d8b40) + 8" (pointer_expression "**(int **)(pcVar35 + 0x3d8b40)" * (pointer_expression "*(int **)(pcVar35 + 0x3d8b40)" * (cast_expression "(int **)(pcVar35 + 0x3d8b40)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar35 + 0x3d8b40)" ( (binary_expression "pcVar35 + 0x3d8b40" identifier + number_literal) ))))) + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((*(uint *)&sym->field_0x28 & 0xe000) != 0)" ( (binary_expression "(*(uint *)&sym->field_0x28 & 0xe000) != 0" (parenthesized_expression "(*(uint *)&sym->field_0x28 & 0xe000)" ( (binary_expression "*(uint *)&sym->field_0x28 & 0xe000" (pointer_expression "*(uint *)&sym->field_0x28" * (cast_expression "(uint *)&sym->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&sym->field_0x28" & (field_expression "sym->field_0x28" identifier -> field_identifier)))) & number_literal) )) != number_literal) ))) )) || (parenthesized_expression "(-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage)" ( (field_expression "-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl._M_end_of_storage" (field_expression "-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_>.\n                      _M_impl" (binary_expression "-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold::Output_data*>_" (binary_expression "-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std::allocator<gold" (binary_expression "-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold::Output_data*,_std" (binary_expression "-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base<gold" (binary_expression "-1 < (int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base" number_literal < (cast_expression "(int)((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base" ( (type_descriptor "int" primitive_type) ) (field_expression "((sym->u1_).output_segment)->output_lists_[3].\n                      super__Vector_base" (subscript_expression "((sym->u1_).output_segment)->output_lists_[3]" (field_expression "((sym->u1_).output_segment)->output_lists_" (parenthesized_expression "((sym->u1_).output_segment)" ( (field_expression "(sym->u1_).output_segment" (parenthesized_expression "(sym->u1_)" ( (field_expression "sym->u1_" identifier -> field_identifier) )) . field_identifier) )) -> field_identifier) [ number_literal ]) . field_identifier))) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Output_data" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ))) )) (compound_statement "{\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }" { (expression_statement "iVar2 = (int)(pOVar21->super_Output_data).data_size_;" (assignment_expression "iVar2 = (int)(pOVar21->super_Output_data).data_size_" identifier = (cast_expression "(int)(pOVar21->super_Output_data).data_size_" ( (type_descriptor "int" primitive_type) ) (field_expression "(pOVar21->super_Output_data).data_size_" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier))) ;) }) (else_clause "else {\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }" else (compound_statement "{\n          if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }\n          iVar2 = (int)(pOVar21->super_Output_data).data_size_;\n        }" { (if_statement "if ((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000) {\n            return true;\n          }" if (parenthesized_expression "((*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000)" ( (binary_expression "(*(uint *)&sym->field_0x28 & 0x70000000) != 0x20000000" (parenthesized_expression "(*(uint *)&sym->field_0x28 & 0x70000000)" ( (binary_expression "*(uint *)&sym->field_0x28 & 0x70000000" (pointer_expression "*(uint *)&sym->field_0x28" * (cast_expression "(uint *)&sym->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&sym->field_0x28" & (field_expression "sym->field_0x28" identifier -> field_identifier)))) & number_literal) )) != number_literal) )) (compound_statement "{\n            return true;\n          }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = (int)(pOVar21->super_Output_data).data_size_;" (assignment_expression "iVar2 = (int)(pOVar21->super_Output_data).data_size_" identifier = (cast_expression "(int)(pOVar21->super_Output_data).data_size_" ( (type_descriptor "int" primitive_type) ) (field_expression "(pOVar21->super_Output_data).data_size_" (parenthesized_expression "(pOVar21->super_Output_data)" ( (field_expression "pOVar21->super_Output_data" identifier -> field_identifier) )) . field_identifier))) ;) }))) (if_statement "if (iVar2 == 0) {\n          pGVar6 = &sym->got_offsets_;\n        }\n        else {\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          pGVar6 = &sym->got_offsets_;\n        }" { (expression_statement "pGVar6 = &sym->got_offsets_;" (assignment_expression "pGVar6 = &sym->got_offsets_" identifier = (pointer_expression "&sym->got_offsets_" & (field_expression "sym->got_offsets_" identifier -> field_identifier))) ;) }) (else_clause "else {\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }" else (compound_statement "{\n          pGVar6 = &sym->got_offsets_;\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }\n        }" { (expression_statement "pGVar6 = &sym->got_offsets_;" (assignment_expression "pGVar6 = &sym->got_offsets_" identifier = (pointer_expression "&sym->got_offsets_" & (field_expression "sym->got_offsets_" identifier -> field_identifier))) ;) (if_statement "if (*(int *)(iVar2 + 0x8c) != 0) {\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }" if (parenthesized_expression "(*(int *)(iVar2 + 0x8c) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x8c) != 0" (pointer_expression "*(int *)(iVar2 + 0x8c)" * (cast_expression "(int *)(iVar2 + 0x8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x8c)" ( (binary_expression "iVar2 + 0x8c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            uVar5 = sym[1].got_offsets_.got_offset_;\nLAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }\n            bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);\n            return bVar10;\n          }" { (expression_statement "uVar5 = sym[1].got_offsets_.got_offset_;" (assignment_expression "uVar5 = sym[1].got_offsets_.got_offset_" identifier = (field_expression "sym[1].got_offsets_.got_offset_" (field_expression "sym[1].got_offsets_" (subscript_expression "sym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)) ;) (labeled_statement "LAB_000e8f24:\n            if (uVar5 == 0xffffffff) {\n              return true;\n            }" statement_identifier : (if_statement "if (uVar5 == 0xffffffff) {\n              return true;\n            }" if (parenthesized_expression "(uVar5 == 0xffffffff)" ( (binary_expression "uVar5 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n              return true;\n            }" { (return_statement "return true;" return true ;) }))) (expression_statement "bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false);" (assignment_expression "bVar10 = symbol_refs_local(sym,sym->dynsym_index_ != 0,false)" identifier = (call_expression "symbol_refs_local(sym,sym->dynsym_index_ != 0,false)" identifier (argument_list "(sym,sym->dynsym_index_ != 0,false)" ( identifier , (binary_expression "sym->dynsym_index_ != 0" (field_expression "sym->dynsym_index_" identifier -> field_identifier) != number_literal) , false )))) ;) (return_statement "return bVar10;" return identifier ;) })) }))) (do_statement "do {\n          if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }\n          pGVar6 = pGVar6->got_next_;\n        } while (pGVar6 != (Got_offset_list *)0x0);" do (compound_statement "{\n          if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }\n          pGVar6 = pGVar6->got_next_;\n        }" { (if_statement "if (pGVar6->got_type_ == 0) {\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }" if (parenthesized_expression "(pGVar6->got_type_ == 0)" ( (binary_expression "pGVar6->got_type_ == 0" (field_expression "pGVar6->got_type_" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n            uVar5 = pGVar6->got_offset_;\n            goto LAB_000e8f24;\n          }" { (expression_statement "uVar5 = pGVar6->got_offset_;" (assignment_expression "uVar5 = pGVar6->got_offset_" identifier = (field_expression "pGVar6->got_offset_" identifier -> field_identifier)) ;) (goto_statement "goto LAB_000e8f24;" goto statement_identifier ;) })) (expression_statement "pGVar6 = pGVar6->got_next_;" (assignment_expression "pGVar6 = pGVar6->got_next_" identifier = (field_expression "pGVar6->got_next_" identifier -> field_identifier)) ;) }) while (parenthesized_expression "(pGVar6 != (Got_offset_list *)0x0)" ( (binary_expression "pGVar6 != (Got_offset_list *)0x0" identifier != (cast_expression "(Got_offset_list *)0x0" ( (type_descriptor "Got_offset_list *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) })) (return_statement "return true;" return true ;) })) (if_statement "if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((this[5].calculated_value_ & 0xe000) != 0)) ||\n       (-1 < *(int *)(this[1].calculated_value_ + 0x2c))) {\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }\n    else {\n      if ((this[5].calculated_value_ & 0x70000000) != 0x20000000) {\n        return true;\n      }\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }" if (parenthesized_expression "(((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((this[5].calculated_value_ & 0xe000) != 0)) ||\n       (-1 < *(int *)(this[1].calculated_value_ + 0x2c)))" ( (binary_expression "((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((this[5].calculated_value_ & 0xe000) != 0)) ||\n       (-1 < *(int *)(this[1].calculated_value_ + 0x2c))" (parenthesized_expression "((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((this[5].calculated_value_ & 0xe000) != 0))" ( (binary_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((this[5].calculated_value_ & 0xe000) != 0)" (parenthesized_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0')" ( (binary_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0'" (pointer_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" * (cast_expression "(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((this[5].calculated_value_ & 0xe000) != 0)" ( (binary_expression "(this[5].calculated_value_ & 0xe000) != 0" (parenthesized_expression "(this[5].calculated_value_ & 0xe000)" ( (binary_expression "this[5].calculated_value_ & 0xe000" (field_expression "this[5].calculated_value_" (subscript_expression "this[5]" identifier [ number_literal ]) . field_identifier) & number_literal) )) != number_literal) ))) )) || (parenthesized_expression "(-1 < *(int *)(this[1].calculated_value_ + 0x2c))" ( (binary_expression "-1 < *(int *)(this[1].calculated_value_ + 0x2c)" number_literal < (pointer_expression "*(int *)(this[1].calculated_value_ + 0x2c)" * (cast_expression "(int *)(this[1].calculated_value_ + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(this[1].calculated_value_ + 0x2c)" ( (binary_expression "this[1].calculated_value_ + 0x2c" (field_expression "this[1].calculated_value_" (subscript_expression "this[1]" identifier [ number_literal ]) . field_identifier) + number_literal) ))))) ))) )) (compound_statement "{\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }" { (expression_statement "iVar2 = (int)(output_section->super_Output_data).data_size_;" (assignment_expression "iVar2 = (int)(output_section->super_Output_data).data_size_" identifier = (cast_expression "(int)(output_section->super_Output_data).data_size_" ( (type_descriptor "int" primitive_type) ) (field_expression "(output_section->super_Output_data).data_size_" (parenthesized_expression "(output_section->super_Output_data)" ( (field_expression "output_section->super_Output_data" identifier -> field_identifier) )) . field_identifier))) ;) }) (else_clause "else {\n      if ((this[5].calculated_value_ & 0x70000000) != 0x20000000) {\n        return true;\n      }\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }" else (compound_statement "{\n      if ((this[5].calculated_value_ & 0x70000000) != 0x20000000) {\n        return true;\n      }\n      iVar2 = (int)(output_section->super_Output_data).data_size_;\n    }" { (if_statement "if ((this[5].calculated_value_ & 0x70000000) != 0x20000000) {\n        return true;\n      }" if (parenthesized_expression "((this[5].calculated_value_ & 0x70000000) != 0x20000000)" ( (binary_expression "(this[5].calculated_value_ & 0x70000000) != 0x20000000" (parenthesized_expression "(this[5].calculated_value_ & 0x70000000)" ( (binary_expression "this[5].calculated_value_ & 0x70000000" (field_expression "this[5].calculated_value_" (subscript_expression "this[5]" identifier [ number_literal ]) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        return true;\n      }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar2 = (int)(output_section->super_Output_data).data_size_;" (assignment_expression "iVar2 = (int)(output_section->super_Output_data).data_size_" identifier = (cast_expression "(int)(output_section->super_Output_data).data_size_" ( (type_descriptor "int" primitive_type) ) (field_expression "(output_section->super_Output_data).data_size_" (parenthesized_expression "(output_section->super_Output_data)" ( (field_expression "output_section->super_Output_data" identifier -> field_identifier) )) . field_identifier))) ;) }))) (if_statement "if (iVar2 == 0) {\n      pbVar4 = &this[3].calculate_only_;\n    }\n    else {\n      pbVar4 = &this[3].calculate_only_;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        VVar3 = this[10].calculated_value_;\nLAB_000e8d84:\n        if (VVar3 == 0xffffffff) {\n          return true;\n        }\n        bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);\n        return bVar10;\n      }\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      pbVar4 = &this[3].calculate_only_;\n    }" { (expression_statement "pbVar4 = &this[3].calculate_only_;" (assignment_expression "pbVar4 = &this[3].calculate_only_" identifier = (pointer_expression "&this[3].calculate_only_" & (field_expression "this[3].calculate_only_" (subscript_expression "this[3]" identifier [ number_literal ]) . field_identifier))) ;) }) (else_clause "else {\n      pbVar4 = &this[3].calculate_only_;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        VVar3 = this[10].calculated_value_;\nLAB_000e8d84:\n        if (VVar3 == 0xffffffff) {\n          return true;\n        }\n        bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);\n        return bVar10;\n      }\n    }" else (compound_statement "{\n      pbVar4 = &this[3].calculate_only_;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        VVar3 = this[10].calculated_value_;\nLAB_000e8d84:\n        if (VVar3 == 0xffffffff) {\n          return true;\n        }\n        bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);\n        return bVar10;\n      }\n    }" { (expression_statement "pbVar4 = &this[3].calculate_only_;" (assignment_expression "pbVar4 = &this[3].calculate_only_" identifier = (pointer_expression "&this[3].calculate_only_" & (field_expression "this[3].calculate_only_" (subscript_expression "this[3]" identifier [ number_literal ]) . field_identifier))) ;) (if_statement "if (*(int *)(iVar2 + 0x8c) != 0) {\n        VVar3 = this[10].calculated_value_;\nLAB_000e8d84:\n        if (VVar3 == 0xffffffff) {\n          return true;\n        }\n        bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);\n        return bVar10;\n      }" if (parenthesized_expression "(*(int *)(iVar2 + 0x8c) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x8c) != 0" (pointer_expression "*(int *)(iVar2 + 0x8c)" * (cast_expression "(int *)(iVar2 + 0x8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x8c)" ( (binary_expression "iVar2 + 0x8c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        VVar3 = this[10].calculated_value_;\nLAB_000e8d84:\n        if (VVar3 == 0xffffffff) {\n          return true;\n        }\n        bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);\n        return bVar10;\n      }" { (expression_statement "VVar3 = this[10].calculated_value_;" (assignment_expression "VVar3 = this[10].calculated_value_" identifier = (field_expression "this[10].calculated_value_" (subscript_expression "this[10]" identifier [ number_literal ]) . field_identifier)) ;) (labeled_statement "LAB_000e8d84:\n        if (VVar3 == 0xffffffff) {\n          return true;\n        }" statement_identifier : (if_statement "if (VVar3 == 0xffffffff) {\n          return true;\n        }" if (parenthesized_expression "(VVar3 == 0xffffffff)" ( (binary_expression "VVar3 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n          return true;\n        }" { (return_statement "return true;" return true ;) }))) (expression_statement "bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false);" (assignment_expression "bVar10 = symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false)" identifier = (call_expression "symbol_refs_local((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false)" identifier (argument_list "((Symbol *)this,*(int *)&this[2].calculate_only_ != 0,false)" ( (cast_expression "(Symbol *)this" ( (type_descriptor "Symbol *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "*(int *)&this[2].calculate_only_ != 0" (pointer_expression "*(int *)&this[2].calculate_only_" * (cast_expression "(int *)&this[2].calculate_only_" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this[2].calculate_only_" & (field_expression "this[2].calculate_only_" (subscript_expression "this[2]" identifier [ number_literal ]) . field_identifier)))) != number_literal) , false )))) ;) (return_statement "return bVar10;" return identifier ;) })) }))) (do_statement "do {\n      if (*(int *)pbVar4 == 0) {\n        VVar3 = *(Valtype *)(pbVar4 + 4);\n        goto LAB_000e8d84;\n      }\n      pbVar4 = *(bool **)(pbVar4 + 8);\n    } while (pbVar4 != (bool *)0x0);" do (compound_statement "{\n      if (*(int *)pbVar4 == 0) {\n        VVar3 = *(Valtype *)(pbVar4 + 4);\n        goto LAB_000e8d84;\n      }\n      pbVar4 = *(bool **)(pbVar4 + 8);\n    }" { (if_statement "if (*(int *)pbVar4 == 0) {\n        VVar3 = *(Valtype *)(pbVar4 + 4);\n        goto LAB_000e8d84;\n      }" if (parenthesized_expression "(*(int *)pbVar4 == 0)" ( (binary_expression "*(int *)pbVar4 == 0" (pointer_expression "*(int *)pbVar4" * (cast_expression "(int *)pbVar4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == number_literal) )) (compound_statement "{\n        VVar3 = *(Valtype *)(pbVar4 + 4);\n        goto LAB_000e8d84;\n      }" { (expression_statement "VVar3 = *(Valtype *)(pbVar4 + 4);" (assignment_expression "VVar3 = *(Valtype *)(pbVar4 + 4)" identifier = (pointer_expression "*(Valtype *)(pbVar4 + 4)" * (cast_expression "(Valtype *)(pbVar4 + 4)" ( (type_descriptor "Valtype *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar4 + 4)" ( (binary_expression "pbVar4 + 4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000e8d84;" goto statement_identifier ;) })) (expression_statement "pbVar4 = *(bool **)(pbVar4 + 8);" (assignment_expression "pbVar4 = *(bool **)(pbVar4 + 8)" identifier = (pointer_expression "*(bool **)(pbVar4 + 8)" * (cast_expression "(bool **)(pbVar4 + 8)" ( (type_descriptor "bool **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar4 + 8)" ( (binary_expression "pbVar4 + 8" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(pbVar4 != (bool *)0x0)" ( (binary_expression "pbVar4 != (bool *)0x0" identifier != (cast_expression "(bool *)0x0" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) })) (expression_statement "PTR_do_gold_unreachable_004c1a30 = pcVar35;" (assignment_expression "PTR_do_gold_unreachable_004c1a30 = pcVar35" identifier = identifier) ;) (return_statement "return true;" return true ;) (ERROR "}" }))
(translation_unit "code * FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)\n\n{\n  code cVar1;\n  int iVar2;\n  code *pcVar3;\n  code *pcVar4;\n  int *piVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  uint uVar10;\n  int iVar11;\n  int iVar12;\n  int *piVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  code *unaff_s2;\n  code *unaff_s5;\n  uint uVar17;\n  uint *puVar18;\n  uint *unaff_s7;\n  uint *puVar19;\n  code *pcVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *unaff_s8;\n  code *pcVar23;\n  code *pcVar24;\n  code *pcVar25;\n  code *pcVar26;\n  undefined1 auStack_288 [8];\n  code *pcStack_280;\n  code *pcStack_27c;\n  uint uStack_278;\n  code *pcStack_274;\n  int iStack_270;\n  uint uStack_268;\n  code *pcStack_264;\n  code *pcStack_260;\n  code *pcStack_25c;\n  int *piStack_258;\n  code *pcStack_254;\n  uint *puStack_250;\n  uint uStack_24c;\n  code *pcStack_248;\n  code *pcStack_244;\n  undefined4 uStack_230;\n  code *pcStack_22c;\n  code *pcStack_228;\n  code *pcStack_224;\n  uint uStack_220;\n  char cStack_219;\n  code *pcStack_218;\n  code *pcStack_214;\n  code *pcStack_210;\n  int iStack_20c;\n  code *pcStack_208;\n  code *pcStack_204;\n  code *pcStack_200;\n  code *pcStack_1fc;\n  int *piStack_1f8;\n  code *pcStack_1f4;\n  uint *puStack_1f0;\n  uint *puStack_1ec;\n  code *pcStack_1e8;\n  code *pcStack_1e4;\n  undefined4 uStack_1d0;\n  int iStack_1cc;\n  code *pcStack_1c8;\n  code *pcStack_1c4;\n  uint uStack_1c0;\n  byte bStack_1b9;\n  code *pcStack_1b8;\n  code *pcStack_1b4;\n  code *pcStack_1b0;\n  int iStack_1ac;\n  code *pcStack_1a8;\n  uint uStack_1a0;\n  code *pcStack_19c;\n  code *pcStack_198;\n  code *pcStack_194;\n  int *piStack_190;\n  code *pcStack_18c;\n  uint uStack_188;\n  uint *puStack_184;\n  code *pcStack_180;\n  code *pcStack_17c;\n  undefined4 uStack_168;\n  code *pcStack_164;\n  code *pcStack_160;\n  code *pcStack_15c;\n  uint uStack_158;\n  byte bStack_151;\n  code *pcStack_150;\n  code *pcStack_14c;\n  code *pcStack_148;\n  code *pcStack_144;\n  code *pcStack_140;\n  code *pcStack_13c;\n  code *pcStack_138;\n  code *pcStack_134;\n  int *piStack_130;\n  code *pcStack_12c;\n  uint uStack_128;\n  uint *puStack_124;\n  code *pcStack_120;\n  code *pcStack_11c;\n  undefined4 uStack_108;\n  int iStack_104;\n  code *pcStack_100;\n  code *pcStack_fc;\n  uint uStack_f8;\n  byte bStack_f1;\n  code *pcStack_f0;\n  code *pcStack_ec;\n  code *pcStack_e8;\n  int iStack_e4;\n  code *pcStack_e0;\n  undefined4 *puStack_d4;\n  code *pcStack_d0;\n  int *piStack_c8;\n  code *pcStack_c4;\n  uint uStack_c0;\n  uint *puStack_bc;\n  code *pcStack_b8;\n  code *pcStack_b4;\n  undefined4 uStack_a0;\n  code *pcStack_9c;\n  code *pcStack_98;\n  code *pcStack_94;\n  uint uStack_90;\n  byte bStack_89;\n  code *pcStack_88;\n  code *pcStack_84;\n  code *pcStack_80;\n  code *pcStack_7c;\n  undefined *puStack_78;\n  int *piStack_74;\n  int iStack_3c;\n  undefined4 *puStack_38;\n  code *pcStack_28;\n  int iStack_24;\n  int iStack_20;\n  \n  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }\n  piVar5 = param_4;\n  if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }\n  PTR_do_gold_unreachable_004c1a30 = pcVar4;\n  return (code *)0x1;\n}\n\n" (function_definition "code * FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)\n\n{\n  code cVar1;\n  int iVar2;\n  code *pcVar3;\n  code *pcVar4;\n  int *piVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  uint uVar10;\n  int iVar11;\n  int iVar12;\n  int *piVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  code *unaff_s2;\n  code *unaff_s5;\n  uint uVar17;\n  uint *puVar18;\n  uint *unaff_s7;\n  uint *puVar19;\n  code *pcVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *unaff_s8;\n  code *pcVar23;\n  code *pcVar24;\n  code *pcVar25;\n  code *pcVar26;\n  undefined1 auStack_288 [8];\n  code *pcStack_280;\n  code *pcStack_27c;\n  uint uStack_278;\n  code *pcStack_274;\n  int iStack_270;\n  uint uStack_268;\n  code *pcStack_264;\n  code *pcStack_260;\n  code *pcStack_25c;\n  int *piStack_258;\n  code *pcStack_254;\n  uint *puStack_250;\n  uint uStack_24c;\n  code *pcStack_248;\n  code *pcStack_244;\n  undefined4 uStack_230;\n  code *pcStack_22c;\n  code *pcStack_228;\n  code *pcStack_224;\n  uint uStack_220;\n  char cStack_219;\n  code *pcStack_218;\n  code *pcStack_214;\n  code *pcStack_210;\n  int iStack_20c;\n  code *pcStack_208;\n  code *pcStack_204;\n  code *pcStack_200;\n  code *pcStack_1fc;\n  int *piStack_1f8;\n  code *pcStack_1f4;\n  uint *puStack_1f0;\n  uint *puStack_1ec;\n  code *pcStack_1e8;\n  code *pcStack_1e4;\n  undefined4 uStack_1d0;\n  int iStack_1cc;\n  code *pcStack_1c8;\n  code *pcStack_1c4;\n  uint uStack_1c0;\n  byte bStack_1b9;\n  code *pcStack_1b8;\n  code *pcStack_1b4;\n  code *pcStack_1b0;\n  int iStack_1ac;\n  code *pcStack_1a8;\n  uint uStack_1a0;\n  code *pcStack_19c;\n  code *pcStack_198;\n  code *pcStack_194;\n  int *piStack_190;\n  code *pcStack_18c;\n  uint uStack_188;\n  uint *puStack_184;\n  code *pcStack_180;\n  code *pcStack_17c;\n  undefined4 uStack_168;\n  code *pcStack_164;\n  code *pcStack_160;\n  code *pcStack_15c;\n  uint uStack_158;\n  byte bStack_151;\n  code *pcStack_150;\n  code *pcStack_14c;\n  code *pcStack_148;\n  code *pcStack_144;\n  code *pcStack_140;\n  code *pcStack_13c;\n  code *pcStack_138;\n  code *pcStack_134;\n  int *piStack_130;\n  code *pcStack_12c;\n  uint uStack_128;\n  uint *puStack_124;\n  code *pcStack_120;\n  code *pcStack_11c;\n  undefined4 uStack_108;\n  int iStack_104;\n  code *pcStack_100;\n  code *pcStack_fc;\n  uint uStack_f8;\n  byte bStack_f1;\n  code *pcStack_f0;\n  code *pcStack_ec;\n  code *pcStack_e8;\n  int iStack_e4;\n  code *pcStack_e0;\n  undefined4 *puStack_d4;\n  code *pcStack_d0;\n  int *piStack_c8;\n  code *pcStack_c4;\n  uint uStack_c0;\n  uint *puStack_bc;\n  code *pcStack_b8;\n  code *pcStack_b4;\n  undefined4 uStack_a0;\n  code *pcStack_9c;\n  code *pcStack_98;\n  code *pcStack_94;\n  uint uStack_90;\n  byte bStack_89;\n  code *pcStack_88;\n  code *pcStack_84;\n  code *pcStack_80;\n  code *pcStack_7c;\n  undefined *puStack_78;\n  int *piStack_74;\n  int iStack_3c;\n  undefined4 *puStack_38;\n  code *pcStack_28;\n  int iStack_24;\n  int iStack_20;\n  \n  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }\n  piVar5 = param_4;\n  if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }\n  PTR_do_gold_unreachable_004c1a30 = pcVar4;\n  return (code *)0x1;\n}" type_identifier (pointer_declarator "* FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)" * (function_declarator "FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)" identifier (parameter_list "(code *param_1,int param_2,int param_3,int *param_4)" ( (parameter_declaration "code *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "int param_2" primitive_type identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "int *param_4" primitive_type (pointer_declarator "*param_4" * identifier)) )))) (compound_statement "{\n  code cVar1;\n  int iVar2;\n  code *pcVar3;\n  code *pcVar4;\n  int *piVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  uint uVar10;\n  int iVar11;\n  int iVar12;\n  int *piVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  code *unaff_s2;\n  code *unaff_s5;\n  uint uVar17;\n  uint *puVar18;\n  uint *unaff_s7;\n  uint *puVar19;\n  code *pcVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *unaff_s8;\n  code *pcVar23;\n  code *pcVar24;\n  code *pcVar25;\n  code *pcVar26;\n  undefined1 auStack_288 [8];\n  code *pcStack_280;\n  code *pcStack_27c;\n  uint uStack_278;\n  code *pcStack_274;\n  int iStack_270;\n  uint uStack_268;\n  code *pcStack_264;\n  code *pcStack_260;\n  code *pcStack_25c;\n  int *piStack_258;\n  code *pcStack_254;\n  uint *puStack_250;\n  uint uStack_24c;\n  code *pcStack_248;\n  code *pcStack_244;\n  undefined4 uStack_230;\n  code *pcStack_22c;\n  code *pcStack_228;\n  code *pcStack_224;\n  uint uStack_220;\n  char cStack_219;\n  code *pcStack_218;\n  code *pcStack_214;\n  code *pcStack_210;\n  int iStack_20c;\n  code *pcStack_208;\n  code *pcStack_204;\n  code *pcStack_200;\n  code *pcStack_1fc;\n  int *piStack_1f8;\n  code *pcStack_1f4;\n  uint *puStack_1f0;\n  uint *puStack_1ec;\n  code *pcStack_1e8;\n  code *pcStack_1e4;\n  undefined4 uStack_1d0;\n  int iStack_1cc;\n  code *pcStack_1c8;\n  code *pcStack_1c4;\n  uint uStack_1c0;\n  byte bStack_1b9;\n  code *pcStack_1b8;\n  code *pcStack_1b4;\n  code *pcStack_1b0;\n  int iStack_1ac;\n  code *pcStack_1a8;\n  uint uStack_1a0;\n  code *pcStack_19c;\n  code *pcStack_198;\n  code *pcStack_194;\n  int *piStack_190;\n  code *pcStack_18c;\n  uint uStack_188;\n  uint *puStack_184;\n  code *pcStack_180;\n  code *pcStack_17c;\n  undefined4 uStack_168;\n  code *pcStack_164;\n  code *pcStack_160;\n  code *pcStack_15c;\n  uint uStack_158;\n  byte bStack_151;\n  code *pcStack_150;\n  code *pcStack_14c;\n  code *pcStack_148;\n  code *pcStack_144;\n  code *pcStack_140;\n  code *pcStack_13c;\n  code *pcStack_138;\n  code *pcStack_134;\n  int *piStack_130;\n  code *pcStack_12c;\n  uint uStack_128;\n  uint *puStack_124;\n  code *pcStack_120;\n  code *pcStack_11c;\n  undefined4 uStack_108;\n  int iStack_104;\n  code *pcStack_100;\n  code *pcStack_fc;\n  uint uStack_f8;\n  byte bStack_f1;\n  code *pcStack_f0;\n  code *pcStack_ec;\n  code *pcStack_e8;\n  int iStack_e4;\n  code *pcStack_e0;\n  undefined4 *puStack_d4;\n  code *pcStack_d0;\n  int *piStack_c8;\n  code *pcStack_c4;\n  uint uStack_c0;\n  uint *puStack_bc;\n  code *pcStack_b8;\n  code *pcStack_b4;\n  undefined4 uStack_a0;\n  code *pcStack_9c;\n  code *pcStack_98;\n  code *pcStack_94;\n  uint uStack_90;\n  byte bStack_89;\n  code *pcStack_88;\n  code *pcStack_84;\n  code *pcStack_80;\n  code *pcStack_7c;\n  undefined *puStack_78;\n  int *piStack_74;\n  int iStack_3c;\n  undefined4 *puStack_38;\n  code *pcStack_28;\n  int iStack_24;\n  int iStack_20;\n  \n  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }\n  piVar5 = param_4;\n  if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }\n  PTR_do_gold_unreachable_004c1a30 = pcVar4;\n  return (code *)0x1;\n}" { (declaration "code cVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "code *pcVar3;" type_identifier (pointer_declarator "*pcVar3" * identifier) ;) (declaration "code *pcVar4;" type_identifier (pointer_declarator "*pcVar4" * identifier) ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "code *pcVar16;" type_identifier (pointer_declarator "*pcVar16" * identifier) ;) (declaration "code *unaff_s2;" type_identifier (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "code *unaff_s5;" type_identifier (pointer_declarator "*unaff_s5" * identifier) ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "uint *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "uint *unaff_s7;" type_identifier (pointer_declarator "*unaff_s7" * identifier) ;) (declaration "uint *puVar19;" type_identifier (pointer_declarator "*puVar19" * identifier) ;) (declaration "code *pcVar20;" type_identifier (pointer_declarator "*pcVar20" * identifier) ;) (declaration "code *pcVar21;" type_identifier (pointer_declarator "*pcVar21" * identifier) ;) (declaration "code *pcVar22;" type_identifier (pointer_declarator "*pcVar22" * identifier) ;) (declaration "code *unaff_s8;" type_identifier (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "code *pcVar23;" type_identifier (pointer_declarator "*pcVar23" * identifier) ;) (declaration "code *pcVar24;" type_identifier (pointer_declarator "*pcVar24" * identifier) ;) (declaration "code *pcVar25;" type_identifier (pointer_declarator "*pcVar25" * identifier) ;) (declaration "code *pcVar26;" type_identifier (pointer_declarator "*pcVar26" * identifier) ;) (declaration "undefined1 auStack_288 [8];" type_identifier (array_declarator "auStack_288 [8]" identifier [ number_literal ]) ;) (declaration "code *pcStack_280;" type_identifier (pointer_declarator "*pcStack_280" * identifier) ;) (declaration "code *pcStack_27c;" type_identifier (pointer_declarator "*pcStack_27c" * identifier) ;) (declaration "uint uStack_278;" type_identifier identifier ;) (declaration "code *pcStack_274;" type_identifier (pointer_declarator "*pcStack_274" * identifier) ;) (declaration "int iStack_270;" primitive_type identifier ;) (declaration "uint uStack_268;" type_identifier identifier ;) (declaration "code *pcStack_264;" type_identifier (pointer_declarator "*pcStack_264" * identifier) ;) (declaration "code *pcStack_260;" type_identifier (pointer_declarator "*pcStack_260" * identifier) ;) (declaration "code *pcStack_25c;" type_identifier (pointer_declarator "*pcStack_25c" * identifier) ;) (declaration "int *piStack_258;" primitive_type (pointer_declarator "*piStack_258" * identifier) ;) (declaration "code *pcStack_254;" type_identifier (pointer_declarator "*pcStack_254" * identifier) ;) (declaration "uint *puStack_250;" type_identifier (pointer_declarator "*puStack_250" * identifier) ;) (declaration "uint uStack_24c;" type_identifier identifier ;) (declaration "code *pcStack_248;" type_identifier (pointer_declarator "*pcStack_248" * identifier) ;) (declaration "code *pcStack_244;" type_identifier (pointer_declarator "*pcStack_244" * identifier) ;) (declaration "undefined4 uStack_230;" type_identifier identifier ;) (declaration "code *pcStack_22c;" type_identifier (pointer_declarator "*pcStack_22c" * identifier) ;) (declaration "code *pcStack_228;" type_identifier (pointer_declarator "*pcStack_228" * identifier) ;) (declaration "code *pcStack_224;" type_identifier (pointer_declarator "*pcStack_224" * identifier) ;) (declaration "uint uStack_220;" type_identifier identifier ;) (declaration "char cStack_219;" primitive_type identifier ;) (declaration "code *pcStack_218;" type_identifier (pointer_declarator "*pcStack_218" * identifier) ;) (declaration "code *pcStack_214;" type_identifier (pointer_declarator "*pcStack_214" * identifier) ;) (declaration "code *pcStack_210;" type_identifier (pointer_declarator "*pcStack_210" * identifier) ;) (declaration "int iStack_20c;" primitive_type identifier ;) (declaration "code *pcStack_208;" type_identifier (pointer_declarator "*pcStack_208" * identifier) ;) (declaration "code *pcStack_204;" type_identifier (pointer_declarator "*pcStack_204" * identifier) ;) (declaration "code *pcStack_200;" type_identifier (pointer_declarator "*pcStack_200" * identifier) ;) (declaration "code *pcStack_1fc;" type_identifier (pointer_declarator "*pcStack_1fc" * identifier) ;) (declaration "int *piStack_1f8;" primitive_type (pointer_declarator "*piStack_1f8" * identifier) ;) (declaration "code *pcStack_1f4;" type_identifier (pointer_declarator "*pcStack_1f4" * identifier) ;) (declaration "uint *puStack_1f0;" type_identifier (pointer_declarator "*puStack_1f0" * identifier) ;) (declaration "uint *puStack_1ec;" type_identifier (pointer_declarator "*puStack_1ec" * identifier) ;) (declaration "code *pcStack_1e8;" type_identifier (pointer_declarator "*pcStack_1e8" * identifier) ;) (declaration "code *pcStack_1e4;" type_identifier (pointer_declarator "*pcStack_1e4" * identifier) ;) (declaration "undefined4 uStack_1d0;" type_identifier identifier ;) (declaration "int iStack_1cc;" primitive_type identifier ;) (declaration "code *pcStack_1c8;" type_identifier (pointer_declarator "*pcStack_1c8" * identifier) ;) (declaration "code *pcStack_1c4;" type_identifier (pointer_declarator "*pcStack_1c4" * identifier) ;) (declaration "uint uStack_1c0;" type_identifier identifier ;) (declaration "byte bStack_1b9;" type_identifier identifier ;) (declaration "code *pcStack_1b8;" type_identifier (pointer_declarator "*pcStack_1b8" * identifier) ;) (declaration "code *pcStack_1b4;" type_identifier (pointer_declarator "*pcStack_1b4" * identifier) ;) (declaration "code *pcStack_1b0;" type_identifier (pointer_declarator "*pcStack_1b0" * identifier) ;) (declaration "int iStack_1ac;" primitive_type identifier ;) (declaration "code *pcStack_1a8;" type_identifier (pointer_declarator "*pcStack_1a8" * identifier) ;) (declaration "uint uStack_1a0;" type_identifier identifier ;) (declaration "code *pcStack_19c;" type_identifier (pointer_declarator "*pcStack_19c" * identifier) ;) (declaration "code *pcStack_198;" type_identifier (pointer_declarator "*pcStack_198" * identifier) ;) (declaration "code *pcStack_194;" type_identifier (pointer_declarator "*pcStack_194" * identifier) ;) (declaration "int *piStack_190;" primitive_type (pointer_declarator "*piStack_190" * identifier) ;) (declaration "code *pcStack_18c;" type_identifier (pointer_declarator "*pcStack_18c" * identifier) ;) (declaration "uint uStack_188;" type_identifier identifier ;) (declaration "uint *puStack_184;" type_identifier (pointer_declarator "*puStack_184" * identifier) ;) (declaration "code *pcStack_180;" type_identifier (pointer_declarator "*pcStack_180" * identifier) ;) (declaration "code *pcStack_17c;" type_identifier (pointer_declarator "*pcStack_17c" * identifier) ;) (declaration "undefined4 uStack_168;" type_identifier identifier ;) (declaration "code *pcStack_164;" type_identifier (pointer_declarator "*pcStack_164" * identifier) ;) (declaration "code *pcStack_160;" type_identifier (pointer_declarator "*pcStack_160" * identifier) ;) (declaration "code *pcStack_15c;" type_identifier (pointer_declarator "*pcStack_15c" * identifier) ;) (declaration "uint uStack_158;" type_identifier identifier ;) (declaration "byte bStack_151;" type_identifier identifier ;) (declaration "code *pcStack_150;" type_identifier (pointer_declarator "*pcStack_150" * identifier) ;) (declaration "code *pcStack_14c;" type_identifier (pointer_declarator "*pcStack_14c" * identifier) ;) (declaration "code *pcStack_148;" type_identifier (pointer_declarator "*pcStack_148" * identifier) ;) (declaration "code *pcStack_144;" type_identifier (pointer_declarator "*pcStack_144" * identifier) ;) (declaration "code *pcStack_140;" type_identifier (pointer_declarator "*pcStack_140" * identifier) ;) (declaration "code *pcStack_13c;" type_identifier (pointer_declarator "*pcStack_13c" * identifier) ;) (declaration "code *pcStack_138;" type_identifier (pointer_declarator "*pcStack_138" * identifier) ;) (declaration "code *pcStack_134;" type_identifier (pointer_declarator "*pcStack_134" * identifier) ;) (declaration "int *piStack_130;" primitive_type (pointer_declarator "*piStack_130" * identifier) ;) (declaration "code *pcStack_12c;" type_identifier (pointer_declarator "*pcStack_12c" * identifier) ;) (declaration "uint uStack_128;" type_identifier identifier ;) (declaration "uint *puStack_124;" type_identifier (pointer_declarator "*puStack_124" * identifier) ;) (declaration "code *pcStack_120;" type_identifier (pointer_declarator "*pcStack_120" * identifier) ;) (declaration "code *pcStack_11c;" type_identifier (pointer_declarator "*pcStack_11c" * identifier) ;) (declaration "undefined4 uStack_108;" type_identifier identifier ;) (declaration "int iStack_104;" primitive_type identifier ;) (declaration "code *pcStack_100;" type_identifier (pointer_declarator "*pcStack_100" * identifier) ;) (declaration "code *pcStack_fc;" type_identifier (pointer_declarator "*pcStack_fc" * identifier) ;) (declaration "uint uStack_f8;" type_identifier identifier ;) (declaration "byte bStack_f1;" type_identifier identifier ;) (declaration "code *pcStack_f0;" type_identifier (pointer_declarator "*pcStack_f0" * identifier) ;) (declaration "code *pcStack_ec;" type_identifier (pointer_declarator "*pcStack_ec" * identifier) ;) (declaration "code *pcStack_e8;" type_identifier (pointer_declarator "*pcStack_e8" * identifier) ;) (declaration "int iStack_e4;" primitive_type identifier ;) (declaration "code *pcStack_e0;" type_identifier (pointer_declarator "*pcStack_e0" * identifier) ;) (declaration "undefined4 *puStack_d4;" type_identifier (pointer_declarator "*puStack_d4" * identifier) ;) (declaration "code *pcStack_d0;" type_identifier (pointer_declarator "*pcStack_d0" * identifier) ;) (declaration "int *piStack_c8;" primitive_type (pointer_declarator "*piStack_c8" * identifier) ;) (declaration "code *pcStack_c4;" type_identifier (pointer_declarator "*pcStack_c4" * identifier) ;) (declaration "uint uStack_c0;" type_identifier identifier ;) (declaration "uint *puStack_bc;" type_identifier (pointer_declarator "*puStack_bc" * identifier) ;) (declaration "code *pcStack_b8;" type_identifier (pointer_declarator "*pcStack_b8" * identifier) ;) (declaration "code *pcStack_b4;" type_identifier (pointer_declarator "*pcStack_b4" * identifier) ;) (declaration "undefined4 uStack_a0;" type_identifier identifier ;) (declaration "code *pcStack_9c;" type_identifier (pointer_declarator "*pcStack_9c" * identifier) ;) (declaration "code *pcStack_98;" type_identifier (pointer_declarator "*pcStack_98" * identifier) ;) (declaration "code *pcStack_94;" type_identifier (pointer_declarator "*pcStack_94" * identifier) ;) (declaration "uint uStack_90;" type_identifier identifier ;) (declaration "byte bStack_89;" type_identifier identifier ;) (declaration "code *pcStack_88;" type_identifier (pointer_declarator "*pcStack_88" * identifier) ;) (declaration "code *pcStack_84;" type_identifier (pointer_declarator "*pcStack_84" * identifier) ;) (declaration "code *pcStack_80;" type_identifier (pointer_declarator "*pcStack_80" * identifier) ;) (declaration "code *pcStack_7c;" type_identifier (pointer_declarator "*pcStack_7c" * identifier) ;) (declaration "undefined *puStack_78;" type_identifier (pointer_declarator "*puStack_78" * identifier) ;) (declaration "int *piStack_74;" primitive_type (pointer_declarator "*piStack_74" * identifier) ;) (declaration "int iStack_3c;" primitive_type identifier ;) (declaration "undefined4 *puStack_38;" type_identifier (pointer_declarator "*puStack_38" * identifier) ;) (declaration "code *pcStack_28;" type_identifier (pointer_declarator "*pcStack_28" * identifier) ;) (declaration "int iStack_24;" primitive_type identifier ;) (declaration "int iStack_20;" primitive_type identifier ;) (if_statement "if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }" if (parenthesized_expression "(((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0))" ( (binary_expression "((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)" (parenthesized_expression "((*(uint *)(param_3 + 0x5c) & 2) == 0)" ( (binary_expression "(*(uint *)(param_3 + 0x5c) & 2) == 0" (parenthesized_expression "(*(uint *)(param_3 + 0x5c) & 2)" ( (binary_expression "*(uint *)(param_3 + 0x5c) & 2" (pointer_expression "*(uint *)(param_3 + 0x5c)" * (cast_expression "(uint *)(param_3 + 0x5c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x5c)" ( (binary_expression "param_3 + 0x5c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) || (parenthesized_expression "(param_1 == (code *)0x0)" ( (binary_expression "param_1 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n    return (code *)0x1;\n  }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "piVar5 = param_4;" (assignment_expression "piVar5 = param_4" identifier = identifier) ;) (if_statement "if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" if (parenthesized_expression "(param_2 - 1U < 0xf9)" ( (binary_expression "param_2 - 1U < 0xf9" (binary_expression "param_2 - 1U" identifier - number_literal) < number_literal) )) (compound_statement "{\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" { (expression_statement "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);" (assignment_expression "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9])" identifier = (call_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9])" (parenthesized_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)" ( (pointer_expression "*(code *)PTR_needs_dynamic_reloc_004c1b58" * (cast_expression "(code *)PTR_needs_dynamic_reloc_004c1b58" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9])" ( identifier , (cast_expression "(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)PTR_s__s_004c1a50[param_2 + -0x56e9]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "PTR_s__s_004c1a50[param_2 + -0x56e9]" identifier [ (binary_expression "param_2 + -0x56e9" identifier + number_literal) ]))) )))) ;) (expression_statement "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;" (assignment_expression "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30" identifier = (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }) (else_clause "else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" else (compound_statement "{\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" { (expression_statement "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);" (assignment_expression "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0)" identifier = (call_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0)" (parenthesized_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)" ( (pointer_expression "*(code *)PTR_needs_dynamic_reloc_004c1b58" * (cast_expression "(code *)PTR_needs_dynamic_reloc_004c1b58" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,0)" ( identifier , number_literal )))) ;) (expression_statement "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;" (assignment_expression "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30" identifier = (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }))) (if_statement "if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }" { (expression_statement "PTR_do_gold_unreachable_004c1a30 = pcVar4;" (assignment_expression "PTR_do_gold_unreachable_004c1a30 = pcVar4" identifier = identifier) ;) (if_statement "if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }" if (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) == number_literal) )) (compound_statement "{\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }" { (expression_statement "iVar2 = 0x5c;" (assignment_expression "iVar2 = 0x5c" identifier = number_literal) ;) (expression_statement "puVar9 = PTR_s__s_004c1a50 + -0x33c8;" (assignment_expression "puVar9 = PTR_s__s_004c1a50 + -0x33c8" identifier = (binary_expression "PTR_s__s_004c1a50 + -0x33c8" identifier + number_literal)) ;) (expression_statement "pcVar3 = FUN_000e8e74;" (assignment_expression "pcVar3 = FUN_000e8e74" identifier = identifier) ;) (expression_statement "puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;" (assignment_expression "puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" identifier = (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" identifier + number_literal)) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) (if_statement "if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }" if (parenthesized_expression "(((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0))" ( (binary_expression "((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)" (parenthesized_expression "((*(uint *)(puVar9 + 0x5c) & 2) == 0)" ( (binary_expression "(*(uint *)(puVar9 + 0x5c) & 2) == 0" (parenthesized_expression "(*(uint *)(puVar9 + 0x5c) & 2)" ( (binary_expression "*(uint *)(puVar9 + 0x5c) & 2" (pointer_expression "*(uint *)(puVar9 + 0x5c)" * (cast_expression "(uint *)(puVar9 + 0x5c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar9 + 0x5c)" ( (binary_expression "puVar9 + 0x5c" identifier + number_literal) )))) & number_literal) )) == number_literal) )) || (parenthesized_expression "(puVar8 == (undefined *)0x0)" ( (binary_expression "puVar8 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n        return (code *)0x1;\n      }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "piVar7 = piVar5;" (assignment_expression "piVar7 = piVar5" identifier = identifier) ;) (if_statement "if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" if (parenthesized_expression "(iVar2 - 1U < 0xf9)" ( (binary_expression "iVar2 - 1U < 0xf9" (binary_expression "iVar2 - 1U" identifier - number_literal) < number_literal) )) (compound_statement "{\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" { (expression_statement "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();" (assignment_expression "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))()" identifier = (call_expression "(**(code **)(pcVar4 + 0x3d8ce4))()" (parenthesized_expression "(**(code **)(pcVar4 + 0x3d8ce4))" ( (pointer_expression "**(code **)(pcVar4 + 0x3d8ce4)" * (pointer_expression "*(code **)(pcVar4 + 0x3d8ce4)" * (cast_expression "(code **)(pcVar4 + 0x3d8ce4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8ce4)" ( (binary_expression "pcVar4 + 0x3d8ce4" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) }) (else_clause "else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" else (compound_statement "{\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" { (expression_statement "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();" (assignment_expression "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))()" identifier = (call_expression "(**(code **)(pcVar4 + 0x3d8ce4))()" (parenthesized_expression "(**(code **)(pcVar4 + 0x3d8ce4))" ( (pointer_expression "**(code **)(pcVar4 + 0x3d8ce4)" * (pointer_expression "*(code **)(pcVar4 + 0x3d8ce4)" * (cast_expression "(code **)(pcVar4 + 0x3d8ce4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8ce4)" ( (binary_expression "pcVar4 + 0x3d8ce4" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) }))) (if_statement "if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }" { (if_statement "if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }" if (parenthesized_expression "(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0)" ( (binary_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0" (pointer_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" * (cast_expression "(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(pcVar4 + 0x3d8b40) + 8)" ( (binary_expression "**(int **)(pcVar4 + 0x3d8b40) + 8" (pointer_expression "**(int **)(pcVar4 + 0x3d8b40)" * (pointer_expression "*(int **)(pcVar4 + 0x3d8b40)" * (cast_expression "(int **)(pcVar4 + 0x3d8b40)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8b40)" ( (binary_expression "pcVar4 + 0x3d8b40" identifier + number_literal) ))))) + number_literal) )))) == number_literal) )) (compound_statement "{\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }" { (expression_statement "pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);" (assignment_expression "pcVar20 = *(code **)(pcVar4 + 0x3d8bbc)" identifier = (pointer_expression "*(code **)(pcVar4 + 0x3d8bbc)" * (cast_expression "(code **)(pcVar4 + 0x3d8bbc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8bbc)" ( (binary_expression "pcVar4 + 0x3d8bbc" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );" (call_expression "(*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    )" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    )" ( (binary_expression "*(int *)(pcVar4 + 0x3d8408) + -0x9b8" (pointer_expression "*(int *)(pcVar4 + 0x3d8408)" * (cast_expression "(int *)(pcVar4 + 0x3d8408)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + 0x3d8408)" ( (binary_expression "pcVar4 + 0x3d8408" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8" (pointer_expression "*(int *)(pcVar4 + 0x3d8bdc)" * (cast_expression "(int *)(pcVar4 + 0x3d8bdc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + 0x3d8bdc)" ( (binary_expression "pcVar4 + 0x3d8bdc" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar22 = pcVar20 + 0x3e022c;" (assignment_expression "pcVar22 = pcVar20 + 0x3e022c" identifier = (binary_expression "pcVar20 + 0x3e022c" identifier + number_literal)) ;) (expression_statement "uVar17 = (uint)pcVar3 & 0xff;" (assignment_expression "uVar17 = (uint)pcVar3 & 0xff" identifier = (binary_expression "(uint)pcVar3 & 0xff" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "piVar13 = piVar7;" (assignment_expression "piVar13 = piVar7" identifier = identifier) ;) (expression_statement "pcStack_98 = pcVar22;" (assignment_expression "pcStack_98 = pcVar22" identifier = identifier) ;) (expression_statement "puStack_78 = puVar8;" (assignment_expression "puStack_78 = puVar8" identifier = identifier) ;) (expression_statement "piStack_74 = piVar5;" (assignment_expression "piStack_74 = piVar5" identifier = identifier) ;) (if_statement "if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }" if (parenthesized_expression "(iStack_3c == 9)" ( (binary_expression "iStack_3c == 9" identifier == number_literal) )) (compound_statement "{\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }" { (expression_statement "pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);" (assignment_expression "pcStack_88 = *(code **)(pcVar20 + 0x3d8b10)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x3d8b10)" * (cast_expression "(code **)(pcVar20 + 0x3d8b10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x3d8b10)" ( (binary_expression "pcVar20 + 0x3d8b10" identifier + number_literal) ))))) ;) (expression_statement "pcVar3 = pcStack_88;" (assignment_expression "pcVar3 = pcStack_88" identifier = identifier) ;) (if_statement "if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }" if (parenthesized_expression "(param_1 != (code *)0x0)" ( (binary_expression "param_1 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }" { (expression_statement "unaff_s2 = (code *)0x0;" (assignment_expression "unaff_s2 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);" (assignment_expression "unaff_s5 = *(code **)(pcVar20 + 0x3d8b48)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x3d8b48)" * (cast_expression "(code **)(pcVar20 + 0x3d8b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x3d8b48)" ( (binary_expression "pcVar20 + 0x3d8b48" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8 = (code *)&uStack_90;" (assignment_expression "unaff_s8 = (code *)&uStack_90" identifier = (cast_expression "(code *)&uStack_90" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_90" & identifier))) ;) (expression_statement "unaff_s7 = (uint *)0xff00;" (assignment_expression "unaff_s7 = (uint *)0xff00" identifier = (cast_expression "(uint *)0xff00" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);" do (compound_statement "{\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              }" { (if_statement "if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }" { (labeled_statement "LAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);" statement_identifier : (expression_statement "pcVar3 = (code *)((uint)puStack_38[1] >> 8);" (assignment_expression "pcVar3 = (code *)((uint)puStack_38[1] >> 8)" identifier = (cast_expression "(code *)((uint)puStack_38[1] >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)puStack_38[1] >> 8)" ( (binary_expression "(uint)puStack_38[1] >> 8" (cast_expression "(uint)puStack_38[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puStack_38[1]" identifier [ number_literal ])) >> number_literal) )))) ;)) (if_statement "if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }" if (parenthesized_expression "(pcVar3 < pcStack_28)" ( (binary_expression "pcVar3 < pcStack_28" identifier < identifier) )) (compound_statement "{\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }" { (expression_statement "pcVar20 = (code *)((int)pcVar3 * 0x10);" (assignment_expression "pcVar20 = (code *)((int)pcVar3 * 0x10)" identifier = (cast_expression "(code *)((int)pcVar3 * 0x10)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar3 * 0x10)" ( (binary_expression "(int)pcVar3 * 0x10" (cast_expression "(int)pcVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if (iStack_24 == 0) goto LAB_000e9610;" if (parenthesized_expression "(iStack_24 == 0)" ( (binary_expression "iStack_24 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9610;" goto statement_identifier ;)) (expression_statement "pcVar15 = pcVar20 + iStack_24;" (assignment_expression "pcVar15 = pcVar20 + iStack_24" identifier = (binary_expression "pcVar20 + iStack_24" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe)" identifier = (binary_expression "(uint)*(ushort *)(pcVar15 + 0xe)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar15 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe)" ( (binary_expression "pcVar15 + 0xe" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }" { (labeled_statement "LAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000e9394;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9394;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e962c;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;" if (parenthesized_expression "(*(int *)(piVar7[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar7[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" ( (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9434;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" identifier = (subscript_expression "pcVar15[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }" else (compound_statement "{\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }" { (if_statement "if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }" { (expression_statement "iVar2 = piVar7[0xc];" (assignment_expression "iVar2 = piVar7[0xc]" identifier = (subscript_expression "piVar7[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_84 = pcVar3;" (assignment_expression "pcStack_84 = pcVar3" identifier = identifier) ;) (expression_statement "pcStack_7c = pcVar15;" (assignment_expression "pcStack_7c = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_80 = pcVar20;" (assignment_expression "pcStack_80 = pcVar20" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7)" identifier = (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" ( (pointer_expression "**(code **)(*piVar7 + 0x6c)" * (pointer_expression "*(code **)(*piVar7 + 0x6c)" * (cast_expression "(code **)(*piVar7 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x6c)" ( (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7)" ( identifier )))) ;) (expression_statement "piVar7[0xc] = iVar2;" (assignment_expression "piVar7[0xc] = iVar2" (subscript_expression "piVar7[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);" (assignment_expression "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7790)" * (pointer_expression "*(code **)(pcStack_98 + -0x7790)" * (cast_expression "(code **)(pcStack_98 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7790)" ( (binary_expression "pcStack_98 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar7,pcStack_84)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar3 = pcStack_84;" (assignment_expression "pcVar3 = pcStack_84" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_7c;" (assignment_expression "pcVar15 = pcStack_7c" identifier = identifier) ;) (expression_statement "pcVar20 = pcStack_80;" (assignment_expression "pcVar20 = pcStack_80" identifier = identifier) ;) (goto_statement "goto LAB_000e948c;" goto statement_identifier ;) })) (labeled_statement "LAB_000e9394:\n                      cVar1 = pcVar15[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" identifier = (subscript_expression "pcVar15[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" { (if_statement "if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" if (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == pcStack_88)" ( (binary_expression "*(code **)(*piVar7 + 0x60) == pcStack_88" (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" { (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e95d8;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" ( (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" else (compound_statement "{\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" identifier = (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" ( (pointer_expression "**(code **)(*piVar7 + 0x60)" * (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_90 = CONCAT13(2,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(2,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_90._1_3_)" identifier (argument_list "(2,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" ( (pointer_expression "*unaff_s5" * identifier) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" else (compound_statement "{\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" { (if_statement "if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;" if (parenthesized_expression "((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3)" ( (binary_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3" (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e95bc;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);" (assignment_expression "iVar2 = *(int *)(pcVar20 + piVar7[0x3a])" identifier = (pointer_expression "*(int *)(pcVar20 + piVar7[0x3a])" * (cast_expression "(int *)(pcVar20 + piVar7[0x3a])" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + piVar7[0x3a])" ( (binary_expression "pcVar20 + piVar7[0x3a]" identifier + (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) ))))) ;) (if_statement "if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;" if (parenthesized_expression "((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))" ( (binary_expression "(iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2)" ( (comma_expression "iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2" (assignment_expression "iVar11 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "iVar2 != -2" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000e9238;" goto statement_identifier ;)) (expression_statement "*(int *)(pcVar20 + piVar7[0x3a]) = -2;" (assignment_expression "*(int *)(pcVar20 + piVar7[0x3a]) = -2" (pointer_expression "*(int *)(pcVar20 + piVar7[0x3a])" * (cast_expression "(int *)(pcVar20 + piVar7[0x3a])" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + piVar7[0x3a])" ( (binary_expression "pcVar20 + piVar7[0x3a]" identifier + (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) )))) = number_literal) ;) (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" ( (pointer_expression "*unaff_s5" * identifier) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }" else (compound_statement "{\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }" { (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" ( (pointer_expression "*unaff_s5" * identifier) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;" (assignment_expression "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }" else (compound_statement "{\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }" { (expression_statement "pcStack_9c = (code *)*puStack_38;" (assignment_expression "pcStack_9c = (code *)*puStack_38" identifier = (cast_expression "(code *)*puStack_38" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puStack_38" * identifier))) ;) (expression_statement "uStack_a0 = 0;" (assignment_expression "uStack_a0 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);" (assignment_expression "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_98 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_98 + -0x76e0)" * (cast_expression "(code **)(pcStack_98 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x76e0)" ( (binary_expression "pcStack_98 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(param_4,piVar7,pcVar4 + 0x3e03cc)" ( identifier , identifier , (binary_expression "pcVar4 + 0x3e03cc" identifier + number_literal) )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000e9358;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000e9358;" goto statement_identifier ;)) (labeled_statement "LAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);" statement_identifier : (expression_statement "uStack_90 = CONCAT13(8,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(8,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_90._1_3_)" identifier (argument_list "(8,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" ( (pointer_expression "*unaff_s5" * identifier) )) (argument_list "(iStack_20,unaff_s8)" ( identifier , identifier ))) ;) }))) (expression_statement "unaff_s2 = unaff_s2 + 1;" (assignment_expression "unaff_s2 = unaff_s2 + 1" identifier = (binary_expression "unaff_s2 + 1" identifier + number_literal)) ;) (expression_statement "puStack_38 = puStack_38 + 2;" (assignment_expression "puStack_38 = puStack_38 + 2" identifier = (binary_expression "puStack_38 + 2" identifier + number_literal)) ;) (expression_statement "pcVar3 = param_1;" (assignment_expression "pcVar3 = param_1" identifier = identifier) ;) }) while (parenthesized_expression "(param_1 != unaff_s2)" ( (binary_expression "param_1 != unaff_s2" identifier != identifier) )) ;) })) }) (else_clause "else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }" else (compound_statement "{\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }" { (if_statement "if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }" if (parenthesized_expression "(iStack_3c != 4)" ( (binary_expression "iStack_3c != 4" identifier != number_literal) )) (compound_statement "{\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }" { (labeled_statement "LAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);" statement_identifier : (expression_statement "(**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);" (call_expression "(**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" ( (pointer_expression "**(code **)(pcVar22 + -0x7810)" * (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + -0x77f0) + -0x502c" (pointer_expression "*(int *)(pcVar22 + -0x77f0)" * (cast_expression "(int *)(pcVar22 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x77f0)" ( (binary_expression "pcVar22 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;" statement_identifier : (expression_statement "iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;" (assignment_expression "iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044" identifier = (binary_expression "*(int *)(pcVar22 + -0x77f0) + -0x5044" (pointer_expression "*(int *)(pcVar22 + -0x77f0)" * (cast_expression "(int *)(pcVar22 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x77f0)" ( (binary_expression "pcVar22 + -0x77f0" identifier + number_literal) )))) + number_literal)) ;)) (expression_statement "(**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);" (call_expression "(**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" ( (pointer_expression "**(code **)(pcVar22 + -0x7810)" * (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);" statement_identifier : (expression_statement "pcVar21 = *(code **)(pcVar22 + -0x7810);" (assignment_expression "pcVar21 = *(code **)(pcVar22 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar24 = FUN_000e9644;" (assignment_expression "pcVar24 = FUN_000e9644" identifier = identifier) ;) (expression_statement "(*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);" (call_expression "(*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x34dc" identifier + number_literal) ))) ;) (expression_statement "pcVar20 = pcStack_80;" (assignment_expression "pcVar20 = pcStack_80" identifier = identifier) ;) (expression_statement "pcVar22 = pcStack_84;" (assignment_expression "pcVar22 = pcStack_84" identifier = identifier) ;) (expression_statement "pcVar3 = pcStack_9c;" (assignment_expression "pcVar3 = pcStack_9c" identifier = identifier) ;) (expression_statement "pcVar4 = pcVar21 + 0x3dfbfc;" (assignment_expression "pcVar4 = pcVar21 + 0x3dfbfc" identifier = (binary_expression "pcVar21 + 0x3dfbfc" identifier + number_literal)) ;) (expression_statement "uVar6 = (uint)bStack_89;" (assignment_expression "uVar6 = (uint)bStack_89" identifier = (cast_expression "(uint)bStack_89" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "piVar5 = piVar13;" (assignment_expression "piVar5 = piVar13" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_98;" (assignment_expression "pcVar15 = pcStack_98" identifier = identifier) ;) (expression_statement "pcStack_100 = pcVar4;" (assignment_expression "pcStack_100 = pcVar4" identifier = identifier) ;) (expression_statement "puStack_d4 = puStack_38;" (assignment_expression "puStack_d4 = puStack_38" identifier = identifier) ;) (expression_statement "pcStack_d0 = unaff_s2;" (assignment_expression "pcStack_d0 = unaff_s2" identifier = identifier) ;) (expression_statement "piStack_c8 = piVar7;" (assignment_expression "piStack_c8 = piVar7" identifier = identifier) ;) (expression_statement "pcStack_c4 = unaff_s5;" (assignment_expression "pcStack_c4 = unaff_s5" identifier = identifier) ;) (expression_statement "uStack_c0 = uVar17;" (assignment_expression "uStack_c0 = uVar17" identifier = identifier) ;) (expression_statement "puStack_bc = unaff_s7;" (assignment_expression "puStack_bc = unaff_s7" identifier = identifier) ;) (expression_statement "pcStack_b8 = unaff_s8;" (assignment_expression "pcStack_b8 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_b4 = pcVar24;" (assignment_expression "pcStack_b4 = pcVar24" identifier = identifier) ;) (if_statement "if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }" if (parenthesized_expression "(pcStack_9c == (code *)0x9)" ( (binary_expression "pcStack_9c == (code *)0x9" identifier == (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }" { (expression_statement "pcVar4 = *(code **)(pcVar21 + 0x3d8408);" (assignment_expression "pcVar4 = *(code **)(pcVar21 + 0x3d8408)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x3d8408)" * (cast_expression "(code **)(pcVar21 + 0x3d8408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d8408)" ( (binary_expression "pcVar21 + 0x3d8408" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }" if (parenthesized_expression "(pcStack_94 != (code *)0x0)" ( (binary_expression "pcStack_94 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }" { (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x3d84e0);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x3d84e0)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x3d84e0)" * (cast_expression "(code **)(pcVar21 + 0x3d84e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d84e0)" ( (binary_expression "pcVar21 + 0x3d84e0" identifier + number_literal) ))))) ;) (expression_statement "pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;" (assignment_expression "pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864" identifier = (binary_expression "*(code **)(pcVar21 + 0x3d8408) + 0x1864" (pointer_expression "*(code **)(pcVar21 + 0x3d8408)" * (cast_expression "(code **)(pcVar21 + 0x3d8408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d8408)" ( (binary_expression "pcVar21 + 0x3d8408" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);" (assignment_expression "puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448)" identifier = (cast_expression "(uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x3d7c38) + 0x5448)" ( (binary_expression "*(int *)(pcVar21 + 0x3d7c38) + 0x5448" (pointer_expression "*(int *)(pcVar21 + 0x3d7c38)" * (cast_expression "(int *)(pcVar21 + 0x3d7c38)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x3d7c38)" ( (binary_expression "pcVar21 + 0x3d7c38" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);" do (compound_statement "{\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  }" { (if_statement "if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }" { (labeled_statement "LAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);" statement_identifier : (expression_statement "pcVar21 = *(code **)(pcVar15 + 4);" (assignment_expression "pcVar21 = *(code **)(pcVar15 + 4)" identifier = (pointer_expression "*(code **)(pcVar15 + 4)" * (cast_expression "(code **)(pcVar15 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 4)" ( (binary_expression "pcVar15 + 4" identifier + number_literal) ))))) ;)) (expression_statement "pcVar14 = (code *)((uint)pcVar21 >> 8);" (assignment_expression "pcVar14 = (code *)((uint)pcVar21 >> 8)" identifier = (cast_expression "(code *)((uint)pcVar21 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pcVar21 >> 8)" ( (binary_expression "(uint)pcVar21 >> 8" (cast_expression "(uint)pcVar21" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" if (parenthesized_expression "(pcVar14 < pcStack_88)" ( (binary_expression "pcVar14 < pcStack_88" identifier < identifier) )) (compound_statement "{\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" { (expression_statement "iVar2 = (int)pcVar14 * 0x10;" (assignment_expression "iVar2 = (int)pcVar14 * 0x10" identifier = (binary_expression "(int)pcVar14 * 0x10" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if (pcVar22 == (code *)0x0) goto LAB_000e9d24;" if (parenthesized_expression "(pcVar22 == (code *)0x0)" ( (binary_expression "pcVar22 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e9d24;" goto statement_identifier ;)) (expression_statement "pcVar16 = pcVar22 + iVar2;" (assignment_expression "pcVar16 = pcVar22 + iVar2" identifier = (binary_expression "pcVar22 + iVar2" identifier + identifier)) ;) (expression_statement "pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);" (assignment_expression "pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe)" identifier = (binary_expression "(code *)(uint)*(ushort *)(pcVar16 + 0xe)" (cast_expression "(code *)(uint)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uint)" ( identifier ))) * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) ))))) ;) (if_statement "if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }" if (parenthesized_expression "(pcVar25 < (code *)0xff00)" ( (binary_expression "pcVar25 < (code *)0xff00" identifier < (cast_expression "(code *)0xff00" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }" { (labeled_statement "LAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;" statement_identifier : (if_statement "if (pcVar25 == (code *)0x0) goto LAB_000e99e8;" if (parenthesized_expression "(pcVar25 == (code *)0x0)" ( (binary_expression "pcVar25 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e99e8;" goto statement_identifier ;))) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;" if (parenthesized_expression "((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)" ( (binary_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9d08;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;" if (parenthesized_expression "(*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0)" ( (binary_expression "*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + (int)pcVar25 * 4)" * (cast_expression "(int *)(piVar13[0xe] + (int)pcVar25 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + (int)pcVar25 * 4)" ( (binary_expression "piVar13[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9a0c;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }" else (compound_statement "{\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }" { (if_statement "if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }" if (parenthesized_expression "(pcVar25 == (code *)0xffff)" ( (binary_expression "pcVar25 == (code *)0xffff" identifier == (cast_expression "(code *)0xffff" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }" { (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" identifier = (subscript_expression "piVar13[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_ec = pcVar21;" (assignment_expression "pcStack_ec = pcVar21" identifier = identifier) ;) (expression_statement "pcStack_e8 = pcVar14;" (assignment_expression "pcStack_e8 = pcVar14" identifier = identifier) ;) (expression_statement "iStack_e4 = iVar2;" (assignment_expression "iStack_e4 = iVar2" identifier = identifier) ;) (expression_statement "pcStack_e0 = pcVar16;" (assignment_expression "pcStack_e0 = pcVar16" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }" { (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8)" identifier = (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" ( (pointer_expression "**(code **)(*piVar13 + 0x6c)" * (pointer_expression "*(code **)(*piVar13 + 0x6c)" * (cast_expression "(code **)(*piVar13 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x6c)" ( (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) )))) ;) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (uint)pcStack_ec;" (assignment_expression "uVar17 = (uint)pcStack_ec" identifier = (cast_expression "(uint)pcStack_ec" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_ec = pcStack_e8;" (assignment_expression "pcStack_ec = pcStack_e8" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_e8;" (assignment_expression "pcVar4 = pcStack_e8" identifier = identifier) ;) (expression_statement "pcStack_e8 = (code *)uVar17;" (assignment_expression "pcStack_e8 = (code *)uVar17" identifier = (cast_expression "(code *)uVar17" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);" (assignment_expression "pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4)" identifier = (cast_expression "(code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7790)" * (pointer_expression "*(code **)(pcStack_100 + -0x7790)" * (cast_expression "(code **)(pcStack_100 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7790)" ( (binary_expression "pcStack_100 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar13,pcVar4)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pcVar21 = pcStack_e8;" (assignment_expression "pcVar21 = pcStack_e8" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_ec;" (assignment_expression "pcVar14 = pcStack_ec" identifier = identifier) ;) (expression_statement "iVar2 = iStack_e4;" (assignment_expression "iVar2 = iStack_e4" identifier = identifier) ;) (expression_statement "pcVar16 = pcStack_e0;" (assignment_expression "pcVar16 = pcStack_e0" identifier = identifier) ;) (goto_statement "goto LAB_000e9ad8;" goto statement_identifier ;) })) (labeled_statement "LAB_000e99e8:\n                          cVar1 = pcVar16[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "uVar17 = (uint)pcVar21 & 0xff;" (assignment_expression "uVar17 = (uint)pcVar21 & 0xff" identifier = (binary_expression "(uint)pcVar21 & 0xff" (cast_expression "(uint)pcVar21" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }" if (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" ( (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }" { (if_statement "if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;" if (parenthesized_expression "(pcVar14 == (code *)0x0 && uVar17 == 0)" ( (binary_expression "pcVar14 == (code *)0x0 && uVar17 == 0" (binary_expression "pcVar14 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (binary_expression "uVar17 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_000e9a0c;" goto statement_identifier ;)) (expression_statement "piVar7 = (int *)(piVar13[0x3a] + iVar2);" (assignment_expression "piVar7 = (int *)(piVar13[0x3a] + iVar2)" identifier = (cast_expression "(int *)(piVar13[0x3a] + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3a] + iVar2)" ( (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }" if (parenthesized_expression "(pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4))" ( (binary_expression "pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)" identifier < (cast_expression "(code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 4)" ( (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 4" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar13[0x3a]" identifier [ number_literal ])) >> number_literal) )))) )) (compound_statement "{\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }" { (expression_statement "iVar2 = *piVar7;" (assignment_expression "iVar2 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (if_statement "if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }" { (expression_statement "uVar17 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar17 = *(uint *)(pcStack_100 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = (code *)0x9;" (assignment_expression "pcVar4 = (code *)0x9" identifier = (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 != -2) goto LAB_000e981c;" if (parenthesized_expression "(iVar2 != -2)" ( (binary_expression "iVar2 != -2" identifier != number_literal) )) (goto_statement "goto LAB_000e981c;" goto statement_identifier ;)) })) (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" * identifier) = number_literal) ;) (goto_statement "goto LAB_000e9970;" goto statement_identifier ;) })) (goto_statement "goto LAB_000e9cb4;" goto statement_identifier ;) })) (if_statement "if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }" if (parenthesized_expression "(uVar17 != 4)" ( (binary_expression "uVar17 != 4" identifier != number_literal) )) (compound_statement "{\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }" { (expression_statement "pcStack_ec = pcVar25;" (assignment_expression "pcStack_ec = pcVar25" identifier = identifier) ;) (expression_statement "uVar17 = (*pcStack_f0)(uVar17,piVar13);" (assignment_expression "uVar17 = (*pcStack_f0)(uVar17,piVar13)" identifier = (call_expression "(*pcStack_f0)(uVar17,piVar13)" (parenthesized_expression "(*pcStack_f0)" ( (pointer_expression "*pcStack_f0" * identifier) )) (argument_list "(uVar17,piVar13)" ( identifier , identifier )))) ;) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" if (parenthesized_expression "(uVar17 < 9)" ( (binary_expression "uVar17 < 9" identifier < number_literal) )) (compound_statement "{\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" { (expression_statement "pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();" (assignment_expression "pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))()" identifier = (cast_expression "(code *)(*(pcStack_100 + puVar19[uVar17]))()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(pcStack_100 + puVar19[uVar17]))()" (parenthesized_expression "(*(pcStack_100 + puVar19[uVar17]))" ( (pointer_expression "*(pcStack_100 + puVar19[uVar17])" * (parenthesized_expression "(pcStack_100 + puVar19[uVar17])" ( (binary_expression "pcStack_100 + puVar19[uVar17]" identifier + (subscript_expression "puVar19[uVar17]" identifier [ identifier ])) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (goto_statement "goto switchD_000e9b48_caseD_3;" goto statement_identifier ;) })) (if_statement "if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }" if (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcVar23)" ( (binary_expression "*(code **)(*piVar13 + 0x60) == pcVar23" (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }" { (if_statement "if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;" if (parenthesized_expression "((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)" ( (binary_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9cec;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4)" identifier = (pointer_expression "*(int *)(piVar13[0xe] + (int)pcVar25 * 4)" * (cast_expression "(int *)(piVar13[0xe] + (int)pcVar25 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + (int)pcVar25 * 4)" ( (binary_expression "piVar13[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))))) ;) (expression_statement "pcStack_ec = pcVar3;" (assignment_expression "pcStack_ec = pcVar3" identifier = identifier) ;) }) (else_clause "else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }" else (compound_statement "{\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }" { (expression_statement "pcStack_ec = pcVar3;" (assignment_expression "pcStack_ec = pcVar3" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25)" identifier = (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,pcVar25)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" ( (pointer_expression "**(code **)(*piVar13 + 0x60)" * (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,pcVar25)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar4 = *(code **)(pcStack_100 + -0x76e4);" (assignment_expression "pcVar4 = *(code **)(pcStack_100 + -0x76e4)" identifier = (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" * (cast_expression "(code **)(pcStack_100 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e4)" ( (binary_expression "pcStack_100 + -0x76e4" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13((char)pcStack_ec,uStack_f8._1_3_)" identifier (argument_list "((char)pcStack_ec,uStack_f8._1_3_)" ( (cast_expression "(char)pcStack_ec" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar4)(pcVar20,&uStack_f8);" (call_expression "(*pcVar4)(pcVar20,&uStack_f8)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pcVar20,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) ))) ;) (if_statement "if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;" if (parenthesized_expression "(pcStack_ec == (code *)&DAT_00000008)" ( (binary_expression "pcStack_ec == (code *)&DAT_00000008" identifier == (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000e9990;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar20 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar20 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) ))))) ;) }) (else_clause "else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" else (compound_statement "{\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" { (labeled_statement "LAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;" statement_identifier : (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" identifier = (binary_expression "uStack_f8 & 0xffffff" identifier & number_literal)) ;)) (expression_statement "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);" (call_expression "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" * (cast_expression "(code **)(pcStack_100 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e4)" ( (binary_expression "pcStack_100 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pcVar20,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) ))) ;) (expression_statement "iVar2 = *(int *)(pcVar20 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar20 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) ))))) ;) }))) (expression_statement "*(int *)(pcVar20 + 0xc) = iVar2 + 1;" (assignment_expression "*(int *)(pcVar20 + 0xc) = iVar2 + 1" (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }" else (compound_statement "{\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }" { (expression_statement "iStack_104 = *(int *)pcVar15;" (assignment_expression "iStack_104 = *(int *)pcVar15" identifier = (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);" (assignment_expression "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" identifier = (call_expression "(**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e0)" * (cast_expression "(code **)(pcStack_100 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e0)" ( (binary_expression "pcStack_100 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_90,piVar13,uStack_a0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000e99a8;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000e99a8;" goto statement_identifier ;)) (labeled_statement "LAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);" statement_identifier : (expression_statement "uStack_f8 = CONCAT13(8,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13(8,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_f8._1_3_)" identifier (argument_list "(8,uStack_f8._1_3_)" ( number_literal , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);" (call_expression "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" * (cast_expression "(code **)(pcStack_100 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e4)" ( (binary_expression "pcStack_100 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pcVar20,&uStack_f8)" ( identifier , (pointer_expression "&uStack_f8" & identifier) ))) ;) }))) (labeled_statement "LAB_000e9990:\n                    pcVar24 = pcVar24 + 1;" statement_identifier : (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;)) (expression_statement "pcVar15 = pcVar15 + 8;" (assignment_expression "pcVar15 = pcVar15 + 8" identifier = (binary_expression "pcVar15 + 8" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcStack_94;" (assignment_expression "pcVar4 = pcStack_94" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_94 != pcVar24)" ( (binary_expression "pcStack_94 != pcVar24" identifier != identifier) )) ;) })) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "pcVar24 = unaff_s2;" (assignment_expression "pcVar24 = unaff_s2" identifier = identifier) ;) (expression_statement "puVar19 = unaff_s7;" (assignment_expression "puVar19 = unaff_s7" identifier = identifier) ;) (expression_statement "pcVar23 = unaff_s8;" (assignment_expression "pcVar23 = unaff_s8" identifier = identifier) ;) (if_statement "if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }" if (parenthesized_expression "(pcStack_9c == (code *)&DAT_00000004)" ( (binary_expression "pcStack_9c == (code *)&DAT_00000004" identifier == (cast_expression "(code *)&DAT_00000004" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }" { (expression_statement "pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);" (assignment_expression "pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x3d84e0)" * (cast_expression "(code **)(pcVar21 + 0x3d84e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d84e0)" ( (binary_expression "pcVar21 + 0x3d84e0" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }" if (parenthesized_expression "(pcStack_94 == (code *)0x0)" ( (binary_expression "pcStack_94 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  return pcStack_f0;\n                }" { (return_statement "return pcStack_f0;" return identifier ;) })) (expression_statement "pcVar3 = (code *)0x0;" (assignment_expression "pcVar3 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar24 = *(code **)(pcVar21 + 0x3d8518);" (assignment_expression "pcVar24 = *(code **)(pcVar21 + 0x3d8518)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x3d8518)" * (cast_expression "(code **)(pcVar21 + 0x3d8518)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x3d8518)" ( (binary_expression "pcVar21 + 0x3d8518" identifier + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)&DAT_00000008;" (assignment_expression "pcVar23 = (code *)&DAT_00000008" identifier = (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) ;) (expression_statement "puVar19 = &uStack_f8;" (assignment_expression "puVar19 = &uStack_f8" identifier = (pointer_expression "&uStack_f8" & identifier)) ;) (labeled_statement "LAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }" statement_identifier : (while_statement "while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }" while (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }" { (expression_statement "iStack_104 = *(int *)pcVar15;" (assignment_expression "iStack_104 = *(int *)pcVar15" identifier = (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);" (assignment_expression "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" identifier = (call_expression "(**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_100 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_100 + -0x76e0)" * (cast_expression "(code **)(pcStack_100 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x76e0)" ( (binary_expression "pcStack_100 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_90,piVar13,uStack_a0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);" statement_identifier : (expression_statement "uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13((char)pcVar23,uStack_f8._1_3_)" identifier (argument_list "((char)pcVar23,uStack_f8._1_3_)" ( (cast_expression "(char)pcVar23" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar20,puVar19)" ( identifier , identifier ))) ;) (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" identifier = (binary_expression "pcVar3 + 1" identifier + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0xc;" (assignment_expression "pcVar15 = pcVar15 + 0xc" identifier = (binary_expression "pcVar15 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }" if (parenthesized_expression "(pcStack_94 == pcVar3)" ( (binary_expression "pcStack_94 == pcVar3" identifier == identifier) )) (compound_statement "{\n                    return pcStack_94;\n                  }" { (return_statement "return pcStack_94;" return identifier ;) })) }))) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (expression_statement "pcVar14 = *(code **)(pcVar15 + 4);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 4)" identifier = (pointer_expression "*(code **)(pcVar15 + 4)" * (cast_expression "(code **)(pcVar15 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 4)" ( (binary_expression "pcVar15 + 4" identifier + number_literal) ))))) ;) (expression_statement "pcVar21 = (code *)((uint)pcVar14 >> 8);" (assignment_expression "pcVar21 = (code *)((uint)pcVar14 >> 8)" identifier = (cast_expression "(code *)((uint)pcVar14 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pcVar14 >> 8)" ( (binary_expression "(uint)pcVar14 >> 8" (cast_expression "(uint)pcVar14" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }" if (parenthesized_expression "(pcStack_88 <= pcVar21)" ( (binary_expression "pcStack_88 <= pcVar21" identifier <= identifier) )) (compound_statement "{\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }" { (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" identifier = (binary_expression "uStack_f8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar20,puVar19)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;" statement_identifier : (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" identifier = (binary_expression "pcVar3 + 1" identifier + number_literal)) ;)) (expression_statement "*(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;" (assignment_expression "*(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1" (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(pcVar20 + 0xc) + 1" (pointer_expression "*(int *)(pcVar20 + 0xc)" * (cast_expression "(int *)(pcVar20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar20 + 0xc)" ( (binary_expression "pcVar20 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0xc;" (assignment_expression "pcVar15 = pcVar15 + 0xc" identifier = (binary_expression "pcVar15 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }" if (parenthesized_expression "(pcStack_94 == pcVar3)" ( (binary_expression "pcStack_94 == pcVar3" identifier == identifier) )) (compound_statement "{\n                    return pcStack_94;\n                  }" { (return_statement "return pcStack_94;" return identifier ;) })) (goto_statement "goto LAB_000e96fc;" goto statement_identifier ;) })) (expression_statement "iVar2 = (int)pcVar21 * 0x10;" (assignment_expression "iVar2 = (int)pcVar21 * 0x10" identifier = (binary_expression "(int)pcVar21 * 0x10" (cast_expression "(int)pcVar21" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }" if (parenthesized_expression "(pcVar22 != (code *)0x0)" ( (binary_expression "pcVar22 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }" { (expression_statement "pcVar16 = pcVar22 + iVar2;" (assignment_expression "pcVar16 = pcVar22 + iVar2" identifier = (binary_expression "pcVar22 + iVar2" identifier + identifier)) ;) (expression_statement "uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);" (assignment_expression "uVar17 = (uint)*(ushort *)(pcVar16 + 0xe)" identifier = (binary_expression "(uint)*(ushort *)(pcVar16 + 0xe)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) ))))) ;) (if_statement "if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }" if (parenthesized_expression "(uVar17 < 0xff00)" ( (binary_expression "uVar17 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }" { (labeled_statement "LAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;" statement_identifier : (if_statement "if (uVar17 == 0) goto LAB_000e9744;" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9744;" goto statement_identifier ;))) (expression_statement "uVar10 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcStack_100 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9d0c;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;" if (parenthesized_expression "(*(int *)(piVar13[0xe] + uVar17 * 4) == 0)" ( (binary_expression "*(int *)(piVar13[0xe] + uVar17 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar17 * 4)" ( (binary_expression "piVar13[0xe] + uVar17 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9768;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }" else (compound_statement "{\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }" { (if_statement "if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }" if (parenthesized_expression "(uVar17 == 0xffff)" ( (binary_expression "uVar17 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }" { (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" identifier = (subscript_expression "piVar13[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_e8 = pcVar21;" (assignment_expression "pcStack_e8 = pcVar21" identifier = identifier) ;) (expression_statement "pcStack_ec = pcVar14;" (assignment_expression "pcStack_ec = pcVar14" identifier = identifier) ;) (expression_statement "iStack_e4 = iVar2;" (assignment_expression "iStack_e4 = iVar2" identifier = identifier) ;) (expression_statement "pcStack_e0 = pcVar16;" (assignment_expression "pcStack_e0 = pcVar16" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }" { (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13)" identifier = (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" ( (pointer_expression "**(code **)(*piVar13 + 0x6c)" * (pointer_expression "*(code **)(*piVar13 + 0x6c)" * (cast_expression "(code **)(*piVar13 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x6c)" ( (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13)" ( identifier )))) ;) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (uint)pcStack_ec;" (assignment_expression "uVar17 = (uint)pcStack_ec" identifier = (cast_expression "(uint)pcStack_ec" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_ec = pcStack_e8;" (assignment_expression "pcStack_ec = pcStack_e8" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_e8;" (assignment_expression "pcVar4 = pcStack_e8" identifier = identifier) ;) (expression_statement "pcStack_e8 = (code *)uVar17;" (assignment_expression "pcStack_e8 = (code *)uVar17" identifier = (cast_expression "(code *)uVar17" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);" (assignment_expression "uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4)" identifier = (call_expression "(**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7790)" * (pointer_expression "*(code **)(pcStack_100 + -0x7790)" * (cast_expression "(code **)(pcStack_100 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7790)" ( (binary_expression "pcStack_100 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar13,pcVar4)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar21 = pcStack_ec;" (assignment_expression "pcVar21 = pcStack_ec" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_e8;" (assignment_expression "pcVar14 = pcStack_e8" identifier = identifier) ;) (expression_statement "iVar2 = iStack_e4;" (assignment_expression "iVar2 = iStack_e4" identifier = identifier) ;) (expression_statement "pcVar16 = pcStack_e0;" (assignment_expression "pcVar16 = pcStack_e0" identifier = identifier) ;) (goto_statement "goto LAB_000e9898;" goto statement_identifier ;) })) (labeled_statement "LAB_000e9744:\n                    cVar1 = pcVar16[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" { (if_statement "if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcStack_f0)" ( (binary_expression "*(code **)(*piVar13 + 0x60) == pcStack_f0" (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9cec;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4)" identifier = (pointer_expression "*(int *)(piVar13[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar17 * 4)" ( (binary_expression "piVar13[0xe] + uVar17 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17)" identifier = (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,uVar17)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" ( (pointer_expression "**(code **)(*piVar13 + 0x60)" * (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,uVar17)" ( identifier , identifier )))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar17 & 0x7fffffff | 0x80000000" (binary_expression "uVar17 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_f8 = CONCAT13(1,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13(1,uStack_f8._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_f8._1_3_)" identifier (argument_list "(1,uStack_f8._1_3_)" ( number_literal , (field_expression "uStack_f8._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar20,puVar19)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" else (compound_statement "{\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" { (if_statement "if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;" if (parenthesized_expression "(((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0)" ( (binary_expression "((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0" (binary_expression "((uint)pcVar14 & 0xff) == 0" (parenthesized_expression "((uint)pcVar14 & 0xff)" ( (binary_expression "(uint)pcVar14 & 0xff" (cast_expression "(uint)pcVar14" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) && (binary_expression "pcVar21 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_000e9768;" goto statement_identifier ;)) (expression_statement "pcVar16 = (code *)(piVar13[0x3a] + iVar2);" (assignment_expression "pcVar16 = (code *)(piVar13[0x3a] + iVar2)" identifier = (cast_expression "(code *)(piVar13[0x3a] + iVar2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3a] + iVar2)" ( (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;" if (parenthesized_expression "((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21)" ( (binary_expression "(code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21" (cast_expression "(code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 4)" ( (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 4" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar13[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e9cb4;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }" if (parenthesized_expression "((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2))" ( (binary_expression "(*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)" (parenthesized_expression "(*(int *)pcVar16 != 0)" ( (binary_expression "*(int *)pcVar16 != 0" (pointer_expression "*(int *)pcVar16" * (cast_expression "(int *)pcVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar16 != -2)" ( (binary_expression "*(int *)pcVar16 != -2" (pointer_expression "*(int *)pcVar16" * (cast_expression "(int *)pcVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }" { (expression_statement "uVar17 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar17 = *(uint *)(pcStack_100 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcVar3;" (assignment_expression "pcVar4 = pcVar3" identifier = identifier) ;) (labeled_statement "LAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);" statement_identifier : (expression_statement "(**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);" (call_expression "(**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7810)" * (pointer_expression "*(code **)(pcStack_100 + -0x7810)" * (cast_expression "(code **)(pcStack_100 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7810)" ( (binary_expression "pcStack_100 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0)" ( (binary_expression "*(uint *)(pcStack_100 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcStack_100 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_100 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x7fc4)" ( (binary_expression "pcStack_100 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar17 - 0x48c0" identifier - number_literal) ))) ;)) (expression_statement "pcVar3 = pcVar4;" (assignment_expression "pcVar3 = pcVar4" identifier = identifier) ;) })) (expression_statement "*(int *)pcVar16 = -2;" (assignment_expression "*(int *)pcVar16 = -2" (pointer_expression "*(int *)pcVar16" * (cast_expression "(int *)pcVar16" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" identifier = (binary_expression "uStack_f8 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar20,puVar19)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000e96e0;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);" (call_expression "(**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_100 + -0x7810)" * (pointer_expression "*(code **)(pcStack_100 + -0x7810)" * (cast_expression "(code **)(pcStack_100 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7810)" ( (binary_expression "pcStack_100 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0)" ( (binary_expression "*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcStack_100 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_100 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x7fc4)" ( (binary_expression "pcStack_100 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcStack_100 + -0x77f0) - 0x50e0" (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" * (cast_expression "(uint *)(pcStack_100 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x77f0)" ( (binary_expression "pcStack_100 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x5068" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x5098" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x33a0" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "LAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);" statement_identifier : (expression_statement "uVar10 = *(uint *)(pcVar4 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcVar4 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar10 - 0x34dc" identifier - number_literal) ))) ;)) (labeled_statement "LAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x50b0" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "switchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);" statement_identifier : (expression_statement "pcVar16 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar16 = *(code **)(pcVar4 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar25 = FUN_000e9d5c;" (assignment_expression "pcVar25 = FUN_000e9d5c" identifier = identifier) ;) (expression_statement "(*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);" (call_expression "(*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8)" (parenthesized_expression "(*pcVar16)" ( (pointer_expression "*pcVar16" * identifier) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x50c8" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (expression_statement "pcVar14 = pcStack_e8;" (assignment_expression "pcVar14 = pcStack_e8" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_ec;" (assignment_expression "pcVar21 = pcStack_ec" identifier = identifier) ;) (expression_statement "pcVar4 = pcVar16 + 0x3df4e4;" (assignment_expression "pcVar4 = pcVar16 + 0x3df4e4" identifier = (binary_expression "pcVar16 + 0x3df4e4" identifier + number_literal)) ;) (expression_statement "pcStack_134 = pcVar22;" (assignment_expression "pcStack_134 = pcVar22" identifier = identifier) ;) (expression_statement "pcStack_140 = pcVar20;" (assignment_expression "pcStack_140 = pcVar20" identifier = identifier) ;) (expression_statement "uVar17 = (uint)bStack_f1;" (assignment_expression "uVar17 = (uint)bStack_f1" identifier = (cast_expression "(uint)bStack_f1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "piVar7 = piVar5;" (assignment_expression "piVar7 = piVar5" identifier = identifier) ;) (expression_statement "pcVar22 = pcStack_100;" (assignment_expression "pcVar22 = pcStack_100" identifier = identifier) ;) (expression_statement "pcStack_160 = pcVar4;" (assignment_expression "pcStack_160 = pcVar4" identifier = identifier) ;) (expression_statement "pcStack_13c = pcVar15;" (assignment_expression "pcStack_13c = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_138 = pcVar24;" (assignment_expression "pcStack_138 = pcVar24" identifier = identifier) ;) (expression_statement "piStack_130 = piVar13;" (assignment_expression "piStack_130 = piVar13" identifier = identifier) ;) (expression_statement "pcStack_12c = pcVar3;" (assignment_expression "pcStack_12c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_128 = uVar6;" (assignment_expression "uStack_128 = uVar6" identifier = identifier) ;) (expression_statement "puStack_124 = puVar19;" (assignment_expression "puStack_124 = puVar19" identifier = identifier) ;) (expression_statement "pcStack_120 = pcVar23;" (assignment_expression "pcStack_120 = pcVar23" identifier = identifier) ;) (expression_statement "pcStack_11c = pcVar25;" (assignment_expression "pcStack_11c = pcVar25" identifier = identifier) ;) (if_statement "if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }" if (parenthesized_expression "(iStack_104 == 9)" ( (binary_expression "iStack_104 == 9" identifier == number_literal) )) (compound_statement "{\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }" { (expression_statement "pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);" (assignment_expression "pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d7dc8)" * (cast_expression "(code **)(pcVar16 + 0x3d7dc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d7dc8)" ( (binary_expression "pcVar16 + 0x3d7dc8" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_150;" (assignment_expression "pcVar4 = pcStack_150" identifier = identifier) ;) (if_statement "if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }" if (parenthesized_expression "(pcStack_fc != (code *)0x0)" ( (binary_expression "pcStack_fc != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }" { (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar3 = *(code **)(pcVar16 + 0x3d7e00);" (assignment_expression "pcVar3 = *(code **)(pcVar16 + 0x3d7e00)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d7e00)" * (cast_expression "(code **)(pcVar16 + 0x3d7e00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d7e00)" ( (binary_expression "pcVar16 + 0x3d7e00" identifier + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)&uStack_158;" (assignment_expression "pcVar23 = (code *)&uStack_158" identifier = (cast_expression "(code *)&uStack_158" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_158" & identifier))) ;) (expression_statement "puVar19 = (uint *)0xff00;" (assignment_expression "puVar19 = (uint *)0xff00" identifier = (cast_expression "(uint *)0xff00" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);" do (compound_statement "{\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  }" { (if_statement "if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }" { (labeled_statement "LAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);" statement_identifier : (expression_statement "uVar6 = *(uint *)(pcVar22 + 4);" (assignment_expression "uVar6 = *(uint *)(pcVar22 + 4)" identifier = (pointer_expression "*(uint *)(pcVar22 + 4)" * (cast_expression "(uint *)(pcVar22 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 4)" ( (binary_expression "pcVar22 + 4" identifier + number_literal) ))))) ;)) (expression_statement "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);" (assignment_expression "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8)" identifier = (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8)" ( (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8" (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10)" ( (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" ( (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" ( (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) >> number_literal) )))) ;) (if_statement "if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }" if (parenthesized_expression "(pcVar20 < pcStack_f0)" ( (binary_expression "pcVar20 < pcStack_f0" identifier < identifier) )) (compound_statement "{\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }" { (expression_statement "pcVar15 = (code *)((int)pcVar20 * 0x10);" (assignment_expression "pcVar15 = (code *)((int)pcVar20 * 0x10)" identifier = (cast_expression "(code *)((int)pcVar20 * 0x10)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar20 * 0x10)" ( (binary_expression "(int)pcVar20 * 0x10" (cast_expression "(int)pcVar20" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if (pcVar21 == (code *)0x0) goto LAB_000ea38c;" if (parenthesized_expression "(pcVar21 == (code *)0x0)" ( (binary_expression "pcVar21 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ea38c;" goto statement_identifier ;)) (expression_statement "pcVar16 = pcVar21 + (int)pcVar15;" (assignment_expression "pcVar16 = pcVar21 + (int)pcVar15" identifier = (binary_expression "pcVar21 + (int)pcVar15" identifier + (cast_expression "(int)pcVar15" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);" (assignment_expression "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" identifier = (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)(pcVar16 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)(pcVar16 + 0xe) >> 8)" ( (binary_expression "*(ushort *)(pcVar16 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) )))) >> number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }" { (labeled_statement "LAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000ea108;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000ea108;" goto statement_identifier ;))) (expression_statement "uVar10 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea3a8;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;" if (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar5[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ea1b0;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }" else (compound_statement "{\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }" { (if_statement "if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }" { (expression_statement "iVar2 = piVar5[0xc];" (assignment_expression "iVar2 = piVar5[0xc]" identifier = (subscript_expression "piVar5[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_14c = pcVar20;" (assignment_expression "pcStack_14c = pcVar20" identifier = identifier) ;) (expression_statement "pcStack_148 = pcVar15;" (assignment_expression "pcStack_148 = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_144 = pcVar16;" (assignment_expression "pcStack_144 = pcVar16" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5)" identifier = (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" ( (pointer_expression "**(code **)(*piVar5 + 0x6c)" * (pointer_expression "*(code **)(*piVar5 + 0x6c)" * (cast_expression "(code **)(*piVar5 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x6c)" ( (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5)" ( identifier )))) ;) (expression_statement "piVar5[0xc] = iVar2;" (assignment_expression "piVar5[0xc] = iVar2" (subscript_expression "piVar5[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);" (assignment_expression "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7790)" * (pointer_expression "*(code **)(pcStack_160 + -0x7790)" * (cast_expression "(code **)(pcStack_160 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7790)" ( (binary_expression "pcStack_160 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar5,pcStack_14c)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar20 = pcStack_14c;" (assignment_expression "pcVar20 = pcStack_14c" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_148;" (assignment_expression "pcVar15 = pcStack_148" identifier = identifier) ;) (expression_statement "pcVar16 = pcStack_144;" (assignment_expression "pcVar16 = pcStack_144" identifier = identifier) ;) (goto_statement "goto LAB_000ea208;" goto statement_identifier ;) })) (labeled_statement "LAB_000ea108:\n                          cVar1 = pcVar16[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" { (if_statement "if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" if (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcStack_150)" ( (binary_expression "*(code **)(*piVar5 + 0x60) == pcStack_150" (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" { (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea354;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" else (compound_statement "{\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" identifier = (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" ( (pointer_expression "**(code **)(*piVar5 + 0x60)" * (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_158 = CONCAT13(2,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(2,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_158._1_3_)" identifier (argument_list "(2,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,pcVar23)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" else (compound_statement "{\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" { (expression_statement "pcVar15 = pcVar15 + piVar5[0x3a];" (assignment_expression "pcVar15 = pcVar15 + piVar5[0x3a]" identifier = (binary_expression "pcVar15 + piVar5[0x3a]" identifier + (subscript_expression "piVar5[0x3a]" identifier [ number_literal ]))) ;) (if_statement "if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;" if (parenthesized_expression "((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)" ( (binary_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20" (cast_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 4)" ( (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 4" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar5[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea338;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;" if (parenthesized_expression "((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))" ( (binary_expression "(*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2)" (parenthesized_expression "(*(int *)pcVar15 != 0)" ( (binary_expression "*(int *)pcVar15 != 0" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2)" ( (comma_expression "uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2" (assignment_expression "uVar6 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "*(int *)pcVar15 != -2" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal)) ))) )) (goto_statement "goto LAB_000e9f98;" goto statement_identifier ;)) (expression_statement "*(int *)pcVar15 = -2;" (assignment_expression "*(int *)pcVar15 = -2" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,pcVar23)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }" else (compound_statement "{\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }" { (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,pcVar23)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" * (cast_expression "(int *)((int)pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar14 + 0xc)" ( (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" * (cast_expression "(int *)((int)pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar14 + 0xc)" ( (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }" else (compound_statement "{\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }" { (expression_statement "uVar6 = *(uint *)pcVar22;" (assignment_expression "uVar6 = *(uint *)pcVar22" identifier = (pointer_expression "*(uint *)pcVar22" * (cast_expression "(uint *)pcVar22" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_168 = 0;" (assignment_expression "uStack_168 = 0" identifier = number_literal) ;) (expression_statement "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);" (assignment_expression "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000)" identifier = (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000)" ( (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10)" ( (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" ( (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" ( (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);" (assignment_expression "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_160 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_160 + -0x76e0)" * (cast_expression "(code **)(pcStack_160 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x76e0)" ( (binary_expression "pcStack_160 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_f8,piVar5,uStack_108)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000ea0b8;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ea0b8;" goto statement_identifier ;)) (labeled_statement "LAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);" statement_identifier : (expression_statement "uStack_158 = CONCAT13(8,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(8,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_158._1_3_)" identifier (argument_list "(8,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,pcVar23)" ( identifier , identifier ))) ;) }))) (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;) (expression_statement "pcVar22 = pcVar22 + 8;" (assignment_expression "pcVar22 = pcVar22 + 8" identifier = (binary_expression "pcVar22 + 8" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcStack_fc;" (assignment_expression "pcVar4 = pcStack_fc" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_fc != pcVar24)" ( (binary_expression "pcStack_fc != pcVar24" identifier != identifier) )) ;) })) (return_statement "return pcVar4;" return identifier ;) })) (if_statement "if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }" if (parenthesized_expression "(iStack_104 == 4)" ( (binary_expression "iStack_104 == 4" identifier == number_literal) )) (compound_statement "{\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }" { (expression_statement "pcVar24 = *(code **)(pcVar16 + 0x3d7e00);" (assignment_expression "pcVar24 = *(code **)(pcVar16 + 0x3d7e00)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d7e00)" * (cast_expression "(code **)(pcVar16 + 0x3d7e00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d7e00)" ( (binary_expression "pcVar16 + 0x3d7e00" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }" if (parenthesized_expression "(pcStack_fc == (code *)0x0)" ( (binary_expression "pcStack_fc == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  return (code *)0x0;\n                }" { (return_statement "return (code *)0x0;" return (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "pcVar3 = (code *)0x0;" (assignment_expression "pcVar3 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);" (assignment_expression "pcVar23 = *(code **)(pcVar16 + 0x3d7dc8)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d7dc8)" * (cast_expression "(code **)(pcVar16 + 0x3d7dc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d7dc8)" ( (binary_expression "pcVar16 + 0x3d7dc8" identifier + number_literal) ))))) ;) (expression_statement "puVar19 = &uStack_158;" (assignment_expression "puVar19 = &uStack_158" identifier = (pointer_expression "&uStack_158" & identifier)) ;) (labeled_statement "LAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }" statement_identifier : (while_statement "while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }" while (parenthesized_expression "(uVar17 != 0)" ( (binary_expression "uVar17 != 0" identifier != number_literal) )) (compound_statement "{\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }" { (expression_statement "uVar6 = *(uint *)pcVar22;" (assignment_expression "uVar6 = *(uint *)pcVar22" identifier = (pointer_expression "*(uint *)pcVar22" * (cast_expression "(uint *)pcVar22" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_168 = 0;" (assignment_expression "uStack_168 = 0" identifier = number_literal) ;) (expression_statement "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );" (assignment_expression "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        )" identifier = (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        )" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        )" ( (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10)" ( (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" ( (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" ( (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);" (assignment_expression "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_160 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_160 + -0x76e0)" * (cast_expression "(code **)(pcStack_160 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x76e0)" ( (binary_expression "pcStack_160 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_f8,piVar5,uStack_108)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);" statement_identifier : (expression_statement "uStack_158 = CONCAT13(8,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(8,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_158._1_3_)" identifier (argument_list "(8,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar14,puVar19)" ( identifier , identifier ))) ;) (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" identifier = (binary_expression "pcVar3 + 1" identifier + number_literal)) ;) (expression_statement "pcVar22 = pcVar22 + 0xc;" (assignment_expression "pcVar22 = pcVar22 + 0xc" identifier = (binary_expression "pcVar22 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }" if (parenthesized_expression "(pcStack_fc == pcVar3)" ( (binary_expression "pcStack_fc == pcVar3" identifier == identifier) )) (compound_statement "{\n                    return pcStack_fc;\n                  }" { (return_statement "return pcStack_fc;" return identifier ;) })) }))) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (expression_statement "uVar6 = *(uint *)(pcVar22 + 4);" (assignment_expression "uVar6 = *(uint *)(pcVar22 + 4)" identifier = (pointer_expression "*(uint *)(pcVar22 + 4)" * (cast_expression "(uint *)(pcVar22 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 4)" ( (binary_expression "pcVar22 + 4" identifier + number_literal) ))))) ;) (expression_statement "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);" (assignment_expression "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8)" identifier = (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8)" ( (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8" (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" ( (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" ( (binary_expression "uVar6 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" ( (binary_expression "uVar6 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" ( (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" ( (binary_expression "uVar6 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) >> number_literal) )))) ;) (if_statement "if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }" if (parenthesized_expression "(pcStack_f0 <= pcVar20)" ( (binary_expression "pcStack_f0 <= pcVar20" identifier <= identifier) )) (compound_statement "{\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }" { (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar14,puVar19)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;" statement_identifier : (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" identifier = (binary_expression "pcVar3 + 1" identifier + number_literal)) ;)) (expression_statement "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" * (cast_expression "(int *)((int)pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar14 + 0xc)" ( (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" * (cast_expression "(int *)((int)pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar14 + 0xc)" ( (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar22 = pcVar22 + 0xc;" (assignment_expression "pcVar22 = pcVar22 + 0xc" identifier = (binary_expression "pcVar22 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }" if (parenthesized_expression "(pcStack_fc == pcVar3)" ( (binary_expression "pcStack_fc == pcVar3" identifier == identifier) )) (compound_statement "{\n                    return pcStack_fc;\n                  }" { (return_statement "return pcStack_fc;" return identifier ;) })) (goto_statement "goto LAB_000e9e0c;" goto statement_identifier ;) })) (expression_statement "pcVar15 = (code *)((int)pcVar20 * 0x10);" (assignment_expression "pcVar15 = (code *)((int)pcVar20 * 0x10)" identifier = (cast_expression "(code *)((int)pcVar20 * 0x10)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar20 * 0x10)" ( (binary_expression "(int)pcVar20 * 0x10" (cast_expression "(int)pcVar20" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }" if (parenthesized_expression "(pcVar21 != (code *)0x0)" ( (binary_expression "pcVar21 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }" { (expression_statement "pcVar16 = pcVar21 + (int)pcVar15;" (assignment_expression "pcVar16 = pcVar21 + (int)pcVar15" identifier = (binary_expression "pcVar21 + (int)pcVar15" identifier + (cast_expression "(int)pcVar15" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);" (assignment_expression "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" identifier = (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)(pcVar16 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)(pcVar16 + 0xe) >> 8)" ( (binary_expression "*(ushort *)(pcVar16 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" * (cast_expression "(ushort *)(pcVar16 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe)" ( (binary_expression "pcVar16 + 0xe" identifier + number_literal) )))) >> number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }" { (labeled_statement "LAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000e9e68;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e9e68;" goto statement_identifier ;))) (expression_statement "uVar10 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea3a8;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;" if (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar5[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e9f08;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }" else (compound_statement "{\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }" { (if_statement "if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }" { (expression_statement "iVar2 = piVar5[0xc];" (assignment_expression "iVar2 = piVar5[0xc]" identifier = (subscript_expression "piVar5[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_150 = pcVar20;" (assignment_expression "pcStack_150 = pcVar20" identifier = identifier) ;) (expression_statement "pcStack_14c = pcVar15;" (assignment_expression "pcStack_14c = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_148 = pcVar16;" (assignment_expression "pcStack_148 = pcVar16" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5)" identifier = (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" ( (pointer_expression "**(code **)(*piVar5 + 0x6c)" * (pointer_expression "*(code **)(*piVar5 + 0x6c)" * (cast_expression "(code **)(*piVar5 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x6c)" ( (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5)" ( identifier )))) ;) (expression_statement "piVar5[0xc] = iVar2;" (assignment_expression "piVar5[0xc] = iVar2" (subscript_expression "piVar5[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);" (assignment_expression "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150)" identifier = (call_expression "(**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7790)" * (pointer_expression "*(code **)(pcStack_160 + -0x7790)" * (cast_expression "(code **)(pcStack_160 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7790)" ( (binary_expression "pcStack_160 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar5,pcStack_150)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar20 = pcStack_150;" (assignment_expression "pcVar20 = pcStack_150" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_14c;" (assignment_expression "pcVar15 = pcStack_14c" identifier = identifier) ;) (expression_statement "pcVar16 = pcStack_148;" (assignment_expression "pcVar16 = pcStack_148" identifier = identifier) ;) (goto_statement "goto LAB_000ea00c;" goto statement_identifier ;) })) (labeled_statement "LAB_000e9e68:\n                    cVar1 = pcVar16[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" identifier = (subscript_expression "pcVar16[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" { (if_statement "if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcVar23)" ( (binary_expression "*(code **)(*piVar5 + 0x60) == pcVar23" (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea354;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" identifier = (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" ( (pointer_expression "**(code **)(*piVar5 + 0x60)" * (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_158 = CONCAT13(1,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(1,uStack_158._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_158._1_3_)" identifier (argument_list "(1,uStack_158._1_3_)" ( number_literal , (field_expression "uStack_158._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar14,puVar19)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" else (compound_statement "{\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" { (expression_statement "pcVar15 = pcVar15 + piVar5[0x3a];" (assignment_expression "pcVar15 = pcVar15 + piVar5[0x3a]" identifier = (binary_expression "pcVar15 + piVar5[0x3a]" identifier + (subscript_expression "piVar5[0x3a]" identifier [ number_literal ]))) ;) (if_statement "if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;" if (parenthesized_expression "((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)" ( (binary_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20" (cast_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 4)" ( (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 4" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar5[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000ea338;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }" if (parenthesized_expression "((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2))" ( (binary_expression "(*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)" (parenthesized_expression "(*(int *)pcVar15 != 0)" ( (binary_expression "*(int *)pcVar15 != 0" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar15 != -2)" ( (binary_expression "*(int *)pcVar15 != -2" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }" { (expression_statement "uVar6 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar6 = *(uint *)(pcStack_160 + -0x77f0)" identifier = (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);" statement_identifier : (expression_statement "(**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);" (call_expression "(**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7810)" * (pointer_expression "*(code **)(pcStack_160 + -0x7810)" * (cast_expression "(code **)(pcStack_160 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7810)" ( (binary_expression "pcStack_160 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0)" ( (binary_expression "*(uint *)(pcStack_160 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcStack_160 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_160 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x7fc4)" ( (binary_expression "pcStack_160 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar6 - 0x48c0" identifier - number_literal) ))) ;)) })) (expression_statement "*(int *)pcVar15 = -2;" (assignment_expression "*(int *)pcVar15 = -2" (pointer_expression "*(int *)pcVar15" * (cast_expression "(int *)pcVar15" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" identifier = (binary_expression "uStack_158 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar14,puVar19)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000e9df0;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);" (call_expression "(**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_160 + -0x7810)" * (pointer_expression "*(code **)(pcStack_160 + -0x7810)" * (cast_expression "(code **)(pcStack_160 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_160 + -0x7810)" ( (binary_expression "pcStack_160 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8)" ( (binary_expression "*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcStack_160 + -0x7fc4)" * (cast_expression "(uint *)(pcStack_160 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x7fc4)" ( (binary_expression "pcStack_160 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcStack_160 + -0x77f0) - 0x48d8" (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" * (cast_expression "(uint *)(pcStack_160 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_160 + -0x77f0)" ( (binary_expression "pcStack_160 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x489c" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) (labeled_statement "LAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x33a0" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x4860" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal) ))) ;) (labeled_statement "LAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;" statement_identifier : (expression_statement "uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;" (assignment_expression "uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878" identifier = (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x4878" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" * (cast_expression "(uint *)(pcVar4 + -0x77f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) - number_literal)) ;)) (expression_statement "(**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);" (call_expression "(**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);" statement_identifier : (expression_statement "pcVar25 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar25 = *(code **)(pcVar4 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar26 = FUN_000ea3c0;" (assignment_expression "pcVar26 = FUN_000ea3c0" identifier = identifier) ;) (expression_statement "(*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);" (call_expression "(*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" (parenthesized_expression "(*pcVar25)" ( (pointer_expression "*pcVar25" * identifier) )) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" ( (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" * (cast_expression "(uint *)(pcVar4 + -0x7fc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "uVar10 - 0x34dc" identifier - number_literal) ))) ;) (expression_statement "pcVar16 = pcStack_148;" (assignment_expression "pcVar16 = pcStack_148" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_14c;" (assignment_expression "pcVar15 = pcStack_14c" identifier = identifier) ;) (expression_statement "pcVar20 = pcStack_164;" (assignment_expression "pcVar20 = pcStack_164" identifier = identifier) ;) (expression_statement "pcVar4 = pcVar25 + 0x3dee80;" (assignment_expression "pcVar4 = pcVar25 + 0x3dee80" identifier = (binary_expression "pcVar25 + 0x3dee80" identifier + number_literal)) ;) (expression_statement "pcStack_194 = pcVar21;" (assignment_expression "pcStack_194 = pcVar21" identifier = identifier) ;) (expression_statement "uStack_1a0 = (uint)pcVar14;" (assignment_expression "uStack_1a0 = (uint)pcVar14" identifier = (cast_expression "(uint)pcVar14" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "puVar18 = (uint *)(uint)bStack_151;" (assignment_expression "puVar18 = (uint *)(uint)bStack_151" identifier = (cast_expression "(uint *)(uint)bStack_151" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)bStack_151" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "piVar13 = piVar7;" (assignment_expression "piVar13 = piVar7" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_160;" (assignment_expression "pcVar21 = pcStack_160" identifier = identifier) ;) (expression_statement "pcStack_1c8 = pcVar4;" (assignment_expression "pcStack_1c8 = pcVar4" identifier = identifier) ;) (expression_statement "pcStack_19c = pcVar22;" (assignment_expression "pcStack_19c = pcVar22" identifier = identifier) ;) (expression_statement "pcStack_198 = pcVar24;" (assignment_expression "pcStack_198 = pcVar24" identifier = identifier) ;) (expression_statement "piStack_190 = piVar5;" (assignment_expression "piStack_190 = piVar5" identifier = identifier) ;) (expression_statement "pcStack_18c = pcVar3;" (assignment_expression "pcStack_18c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_188 = uVar17;" (assignment_expression "uStack_188 = uVar17" identifier = identifier) ;) (expression_statement "puStack_184 = puVar19;" (assignment_expression "puStack_184 = puVar19" identifier = identifier) ;) (expression_statement "pcStack_180 = pcVar23;" (assignment_expression "pcStack_180 = pcVar23" identifier = identifier) ;) (expression_statement "pcStack_17c = pcVar26;" (assignment_expression "pcStack_17c = pcVar26" identifier = identifier) ;) (if_statement "if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }" if (parenthesized_expression "(pcStack_164 == (code *)0x9)" ( (binary_expression "pcStack_164 == (code *)0x9" identifier == (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }" { (expression_statement "pcVar4 = *(code **)(pcVar25 + 0x3d768c);" (assignment_expression "pcVar4 = *(code **)(pcVar25 + 0x3d768c)" identifier = (pointer_expression "*(code **)(pcVar25 + 0x3d768c)" * (cast_expression "(code **)(pcVar25 + 0x3d768c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d768c)" ( (binary_expression "pcVar25 + 0x3d768c" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }" if (parenthesized_expression "(pcStack_15c != (code *)0x0)" ( (binary_expression "pcStack_15c != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }" { (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar23 = *(code **)(pcVar25 + 0x3d7764);" (assignment_expression "pcVar23 = *(code **)(pcVar25 + 0x3d7764)" identifier = (pointer_expression "*(code **)(pcVar25 + 0x3d7764)" * (cast_expression "(code **)(pcVar25 + 0x3d7764)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d7764)" ( (binary_expression "pcVar25 + 0x3d7764" identifier + number_literal) ))))) ;) (expression_statement "pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;" (assignment_expression "pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864" identifier = (binary_expression "*(code **)(pcVar25 + 0x3d768c) + 0x1864" (pointer_expression "*(code **)(pcVar25 + 0x3d768c)" * (cast_expression "(code **)(pcVar25 + 0x3d768c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d768c)" ( (binary_expression "pcVar25 + 0x3d768c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);" (assignment_expression "puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c)" identifier = (cast_expression "(uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c)" ( (binary_expression "*(int *)(pcVar25 + 0x3d6ebc) + 0x546c" (pointer_expression "*(int *)(pcVar25 + 0x3d6ebc)" * (cast_expression "(int *)(pcVar25 + 0x3d6ebc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar25 + 0x3d6ebc)" ( (binary_expression "pcVar25 + 0x3d6ebc" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);" do (compound_statement "{\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  }" { (if_statement "if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }" if (parenthesized_expression "(puVar18 == (uint *)0x0)" ( (binary_expression "puVar18 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }" { (labeled_statement "LAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);" statement_identifier : (expression_statement "uVar17 = *(uint *)(pcVar21 + 4);" (assignment_expression "uVar17 = *(uint *)(pcVar21 + 4)" identifier = (pointer_expression "*(uint *)(pcVar21 + 4)" * (cast_expression "(uint *)(pcVar21 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 4)" ( (binary_expression "pcVar21 + 4" identifier + number_literal) ))))) ;)) (expression_statement "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);" (assignment_expression "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000)" identifier = (cast_expression "(code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000)" ( (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10)" ( (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" ( (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" ( (binary_expression "uVar17 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" ( (binary_expression "uVar17 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" ( (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" ( (binary_expression "uVar17 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "pcVar22 = (code *)((uint)pcVar3 >> 8);" (assignment_expression "pcVar22 = (code *)((uint)pcVar3 >> 8)" identifier = (cast_expression "(code *)((uint)pcVar3 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pcVar3 >> 8)" ( (binary_expression "(uint)pcVar3 >> 8" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" if (parenthesized_expression "(pcVar22 < pcStack_150)" ( (binary_expression "pcVar22 < pcStack_150" identifier < identifier) )) (compound_statement "{\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" { (expression_statement "iVar2 = (int)pcVar22 * 0x10;" (assignment_expression "iVar2 = (int)pcVar22 * 0x10" identifier = (binary_expression "(int)pcVar22 * 0x10" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (pcVar15 == (code *)0x0) goto LAB_000eaad4;" if (parenthesized_expression "(pcVar15 == (code *)0x0)" ( (binary_expression "pcVar15 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eaad4;" goto statement_identifier ;)) (expression_statement "pcVar14 = pcVar15 + iVar2;" (assignment_expression "pcVar14 = pcVar15 + iVar2" identifier = (binary_expression "pcVar15 + iVar2" identifier + identifier)) ;) (expression_statement "pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));" (assignment_expression "pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8))" identifier = (cast_expression "(code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8))" ( (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)(pcVar14 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" * (cast_expression "(ushort *)(pcVar14 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe)" ( (binary_expression "pcVar14 + 0xe" identifier + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)(pcVar14 + 0xe) >> 8)" ( (binary_expression "*(ushort *)(pcVar14 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" * (cast_expression "(ushort *)(pcVar14 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe)" ( (binary_expression "pcVar14 + 0xe" identifier + number_literal) )))) >> number_literal) )))) )))) ;) (if_statement "if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }" if (parenthesized_expression "(pcVar25 < (code *)0xff00)" ( (binary_expression "pcVar25 < (code *)0xff00" identifier < (cast_expression "(code *)0xff00" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }" { (labeled_statement "LAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;" statement_identifier : (if_statement "if (pcVar25 == (code *)0x0) goto LAB_000ea790;" if (parenthesized_expression "(pcVar25 == (code *)0x0)" ( (binary_expression "pcVar25 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000ea790;" goto statement_identifier ;))) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;" if (parenthesized_expression "((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)" ( (binary_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaab8;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;" if (parenthesized_expression "(*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0)" ( (binary_expression "*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + (int)pcVar25 * 4)" * (cast_expression "(int *)(piVar7[0xe] + (int)pcVar25 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + (int)pcVar25 * 4)" ( (binary_expression "piVar7[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ea7b4;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" identifier = (subscript_expression "pcVar14[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }" else (compound_statement "{\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }" { (if_statement "if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }" if (parenthesized_expression "(pcVar25 == (code *)0xffff)" ( (binary_expression "pcVar25 == (code *)0xffff" identifier == (cast_expression "(code *)0xffff" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }" { (expression_statement "iVar11 = piVar7[0xc];" (assignment_expression "iVar11 = piVar7[0xc]" identifier = (subscript_expression "piVar7[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_1b4 = pcVar3;" (assignment_expression "pcStack_1b4 = pcVar3" identifier = identifier) ;) (expression_statement "pcStack_1b0 = pcVar22;" (assignment_expression "pcStack_1b0 = pcVar22" identifier = identifier) ;) (expression_statement "iStack_1ac = iVar2;" (assignment_expression "iStack_1ac = iVar2" identifier = identifier) ;) (expression_statement "pcStack_1a8 = pcVar14;" (assignment_expression "pcStack_1a8 = pcVar14" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }" { (expression_statement "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);" (assignment_expression "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0)" identifier = (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" ( (pointer_expression "**(code **)(*piVar7 + 0x6c)" * (pointer_expression "*(code **)(*piVar7 + 0x6c)" * (cast_expression "(code **)(*piVar7 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x6c)" ( (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) )))) ;) (expression_statement "piVar7[0xc] = iVar11;" (assignment_expression "piVar7[0xc] = iVar11" (subscript_expression "piVar7[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (uint)pcStack_1b4;" (assignment_expression "uVar17 = (uint)pcStack_1b4" identifier = (cast_expression "(uint)pcStack_1b4" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_1b4 = pcStack_1b0;" (assignment_expression "pcStack_1b4 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_1b0;" (assignment_expression "pcVar4 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcStack_1b0 = (code *)uVar17;" (assignment_expression "pcStack_1b0 = (code *)uVar17" identifier = (cast_expression "(code *)uVar17" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);" (assignment_expression "pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4)" identifier = (cast_expression "(code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7790)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7790)" * (cast_expression "(code **)(pcStack_1c8 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7790)" ( (binary_expression "pcStack_1c8 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar7,pcVar4)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pcVar3 = pcStack_1b0;" (assignment_expression "pcVar3 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar22 = pcStack_1b4;" (assignment_expression "pcVar22 = pcStack_1b4" identifier = identifier) ;) (expression_statement "iVar2 = iStack_1ac;" (assignment_expression "iVar2 = iStack_1ac" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_1a8;" (assignment_expression "pcVar14 = pcStack_1a8" identifier = identifier) ;) (goto_statement "goto LAB_000ea888;" goto statement_identifier ;) })) (labeled_statement "LAB_000ea790:\n                          cVar1 = pcVar14[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" identifier = (subscript_expression "pcVar14[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "uVar17 = (uint)pcVar3 & 0xff;" (assignment_expression "uVar17 = (uint)pcVar3 & 0xff" identifier = (binary_expression "(uint)pcVar3 & 0xff" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }" if (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" ( (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }" { (if_statement "if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;" if (parenthesized_expression "(pcVar22 == (code *)0x0 && uVar17 == 0)" ( (binary_expression "pcVar22 == (code *)0x0 && uVar17 == 0" (binary_expression "pcVar22 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (binary_expression "uVar17 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_000ea7b4;" goto statement_identifier ;)) (expression_statement "piVar5 = (int *)(piVar7[0x3a] + iVar2);" (assignment_expression "piVar5 = (int *)(piVar7[0x3a] + iVar2)" identifier = (cast_expression "(int *)(piVar7[0x3a] + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3a] + iVar2)" ( (binary_expression "piVar7[0x3a] + iVar2" (subscript_expression "piVar7[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }" if (parenthesized_expression "(pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4))" ( (binary_expression "pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" identifier < (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) >> number_literal) )))) )) (compound_statement "{\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }" { (expression_statement "iVar2 = *piVar5;" (assignment_expression "iVar2 = *piVar5" identifier = (pointer_expression "*piVar5" * identifier)) ;) (if_statement "if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }" { (expression_statement "iVar11 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_1c8 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = (code *)0x9;" (assignment_expression "pcVar4 = (code *)0x9" identifier = (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar2 != -2) goto LAB_000ea5b0;" if (parenthesized_expression "(iVar2 != -2)" ( (binary_expression "iVar2 != -2" identifier != number_literal) )) (goto_statement "goto LAB_000ea5b0;" goto statement_identifier ;)) })) (expression_statement "*piVar5 = -2;" (assignment_expression "*piVar5 = -2" (pointer_expression "*piVar5" * identifier) = number_literal) ;) (goto_statement "goto LAB_000ea704;" goto statement_identifier ;) })) (goto_statement "goto LAB_000eaa64;" goto statement_identifier ;) })) (if_statement "if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }" if (parenthesized_expression "(uVar17 != 4)" ( (binary_expression "uVar17 != 4" identifier != number_literal) )) (compound_statement "{\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }" { (expression_statement "pcStack_1b4 = pcVar25;" (assignment_expression "pcStack_1b4 = pcVar25" identifier = identifier) ;) (expression_statement "uVar17 = (*pcStack_1b8)(uVar17,piVar7);" (assignment_expression "uVar17 = (*pcStack_1b8)(uVar17,piVar7)" identifier = (call_expression "(*pcStack_1b8)(uVar17,piVar7)" (parenthesized_expression "(*pcStack_1b8)" ( (pointer_expression "*pcStack_1b8" * identifier) )) (argument_list "(uVar17,piVar7)" ( identifier , identifier )))) ;) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" if (parenthesized_expression "(uVar17 < 9)" ( (binary_expression "uVar17 < 9" identifier < number_literal) )) (compound_statement "{\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" { (expression_statement "pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();" (assignment_expression "pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))()" identifier = (cast_expression "(code *)(*(pcStack_1c8 + puVar19[uVar17]))()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(pcStack_1c8 + puVar19[uVar17]))()" (parenthesized_expression "(*(pcStack_1c8 + puVar19[uVar17]))" ( (pointer_expression "*(pcStack_1c8 + puVar19[uVar17])" * (parenthesized_expression "(pcStack_1c8 + puVar19[uVar17])" ( (binary_expression "pcStack_1c8 + puVar19[uVar17]" identifier + (subscript_expression "puVar19[uVar17]" identifier [ identifier ])) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (goto_statement "goto switchD_000ea8f8_caseD_3;" goto statement_identifier ;) })) (if_statement "if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }" if (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == pcVar23)" ( (binary_expression "*(code **)(*piVar7 + 0x60) == pcVar23" (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }" { (if_statement "if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;" if (parenthesized_expression "((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)" ( (binary_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaa9c;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4)" identifier = (pointer_expression "*(int *)(piVar7[0xe] + (int)pcVar25 * 4)" * (cast_expression "(int *)(piVar7[0xe] + (int)pcVar25 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + (int)pcVar25 * 4)" ( (binary_expression "piVar7[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))))) ;) (expression_statement "pcStack_1b4 = pcVar20;" (assignment_expression "pcStack_1b4 = pcVar20" identifier = identifier) ;) }) (else_clause "else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }" else (compound_statement "{\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }" { (expression_statement "pcStack_1b4 = pcVar20;" (assignment_expression "pcStack_1b4 = pcVar20" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25)" identifier = (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,pcVar25)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" ( (pointer_expression "**(code **)(*piVar7 + 0x60)" * (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,pcVar25)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);" (assignment_expression "pcVar4 = *(code **)(pcStack_1c8 + -0x76e4)" identifier = (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e4)" ( (binary_expression "pcStack_1c8 + -0x76e4" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_)" identifier (argument_list "((char)pcStack_1b4,uStack_1c0._1_3_)" ( (cast_expression "(char)pcStack_1b4" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar4)(pcVar16,&uStack_1c0);" (call_expression "(*pcVar4)(pcVar16,&uStack_1c0)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pcVar16,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) ))) ;) (if_statement "if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;" if (parenthesized_expression "(pcStack_1b4 == (code *)&DAT_00000008)" ( (binary_expression "pcStack_1b4 == (code *)&DAT_00000008" identifier == (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000ea724;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar16 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) ))))) ;) }) (else_clause "else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" else (compound_statement "{\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" { (labeled_statement "LAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;" statement_identifier : (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" identifier = (binary_expression "uStack_1c0 & 0xffffff" identifier & number_literal)) ;)) (expression_statement "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e4)" ( (binary_expression "pcStack_1c8 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pcVar16,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) ))) ;) (expression_statement "iVar2 = *(int *)(pcVar16 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) ))))) ;) }))) (expression_statement "*(int *)(pcVar16 + 0xc) = iVar2 + 1;" (assignment_expression "*(int *)(pcVar16 + 0xc) = iVar2 + 1" (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) }) (else_clause "else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }" else (compound_statement "{\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }" { (expression_statement "uVar17 = *(uint *)pcVar21;" (assignment_expression "uVar17 = *(uint *)pcVar21" identifier = (pointer_expression "*(uint *)pcVar21" * (cast_expression "(uint *)pcVar21" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_1d0 = 0;" (assignment_expression "uStack_1d0 = 0" identifier = number_literal) ;) (expression_statement "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" ( (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" ( (binary_expression "uVar17 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" ( (binary_expression "uVar17 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" ( (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" ( (binary_expression "uVar17 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);" (assignment_expression "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" identifier = (call_expression "(**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e0)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e0)" ( (binary_expression "pcStack_1c8 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_158,piVar7,uStack_168)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000ea73c;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000ea73c;" goto statement_identifier ;)) (labeled_statement "LAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);" statement_identifier : (expression_statement "uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_1c0._1_3_)" identifier (argument_list "(8,uStack_1c0._1_3_)" ( number_literal , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e4))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e4)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e4)" ( (binary_expression "pcStack_1c8 + -0x76e4" identifier + number_literal) ))))) )) (argument_list "(pcVar16,&uStack_1c0)" ( identifier , (pointer_expression "&uStack_1c0" & identifier) ))) ;) }))) (labeled_statement "LAB_000ea724:\n                    pcVar24 = pcVar24 + 1;" statement_identifier : (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;)) (expression_statement "pcVar21 = pcVar21 + 8;" (assignment_expression "pcVar21 = pcVar21 + 8" identifier = (binary_expression "pcVar21 + 8" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcStack_15c;" (assignment_expression "pcVar4 = pcStack_15c" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_15c != pcVar24)" ( (binary_expression "pcStack_15c != pcVar24" identifier != identifier) )) ;) })) (return_statement "return pcVar4;" return identifier ;) })) (if_statement "if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }" if (parenthesized_expression "(pcStack_164 == (code *)&DAT_00000004)" ( (binary_expression "pcStack_164 == (code *)&DAT_00000004" identifier == (cast_expression "(code *)&DAT_00000004" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }" { (expression_statement "pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);" (assignment_expression "pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764)" identifier = (pointer_expression "*(code **)(pcVar25 + 0x3d7764)" * (cast_expression "(code **)(pcVar25 + 0x3d7764)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d7764)" ( (binary_expression "pcVar25 + 0x3d7764" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }" if (parenthesized_expression "(pcStack_15c == (code *)0x0)" ( (binary_expression "pcStack_15c == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  return pcStack_1b8;\n                }" { (return_statement "return pcStack_1b8;" return identifier ;) })) (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar24 = *(code **)(pcVar25 + 0x3d779c);" (assignment_expression "pcVar24 = *(code **)(pcVar25 + 0x3d779c)" identifier = (pointer_expression "*(code **)(pcVar25 + 0x3d779c)" * (cast_expression "(code **)(pcVar25 + 0x3d779c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar25 + 0x3d779c)" ( (binary_expression "pcVar25 + 0x3d779c" identifier + number_literal) ))))) ;) (expression_statement "pcVar23 = (code *)&DAT_00000008;" (assignment_expression "pcVar23 = (code *)&DAT_00000008" identifier = (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) ;) (expression_statement "puVar19 = &uStack_1c0;" (assignment_expression "puVar19 = &uStack_1c0" identifier = (pointer_expression "&uStack_1c0" & identifier)) ;) (labeled_statement "LAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }" statement_identifier : (while_statement "while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }" while (parenthesized_expression "(puVar18 != (uint *)0x0)" ( (binary_expression "puVar18 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }" { (expression_statement "uVar17 = *(uint *)pcVar21;" (assignment_expression "uVar17 = *(uint *)pcVar21" identifier = (pointer_expression "*(uint *)pcVar21" * (cast_expression "(uint *)pcVar21" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uStack_1d0 = 0;" (assignment_expression "uStack_1d0 = 0" identifier = number_literal) ;) (expression_statement "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" identifier = (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" ( (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" ( (binary_expression "uVar17 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" ( (binary_expression "uVar17 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" ( (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" ( (binary_expression "uVar17 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);" (assignment_expression "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" identifier = (call_expression "(**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x76e0)" * (cast_expression "(code **)(pcStack_1c8 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x76e0)" ( (binary_expression "pcStack_1c8 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_158,piVar7,uStack_168)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);" statement_identifier : (expression_statement "uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13((char)pcVar23,uStack_1c0._1_3_)" identifier (argument_list "((char)pcVar23,uStack_1c0._1_3_)" ( (cast_expression "(char)pcVar23" ( (type_descriptor "char" primitive_type) ) identifier) , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar16,puVar19)" ( identifier , identifier ))) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar21 = pcVar21 + 0xc;" (assignment_expression "pcVar21 = pcVar21 + 0xc" identifier = (binary_expression "pcVar21 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }" if (parenthesized_expression "(pcStack_15c == pcVar20)" ( (binary_expression "pcStack_15c == pcVar20" identifier == identifier) )) (compound_statement "{\n                    return pcStack_15c;\n                  }" { (return_statement "return pcStack_15c;" return identifier ;) })) }))) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (expression_statement "uVar17 = *(uint *)(pcVar21 + 4);" (assignment_expression "uVar17 = *(uint *)(pcVar21 + 4)" identifier = (pointer_expression "*(uint *)(pcVar21 + 4)" * (cast_expression "(uint *)(pcVar21 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 4)" ( (binary_expression "pcVar21 + 4" identifier + number_literal) ))))) ;) (expression_statement "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);" (assignment_expression "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000)" identifier = (cast_expression "(code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000)" ( (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10)" ( (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" ( (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" ( (binary_expression "uVar17 >> 0x10" identifier >> number_literal) )) << number_literal) | (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" ( (binary_expression "uVar17 >> 0x18" identifier >> number_literal) )) << number_literal)) )) >> number_literal) )) + (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" ( (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" ( (binary_expression "uVar17 & 0xff" identifier & number_literal) )) << number_literal) | (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" identifier >> number_literal) & number_literal)) )) * number_literal)) )))) ;) (expression_statement "pcVar22 = (code *)((uint)pcVar3 >> 8);" (assignment_expression "pcVar22 = (code *)((uint)pcVar3 >> 8)" identifier = (cast_expression "(code *)((uint)pcVar3 >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pcVar3 >> 8)" ( (binary_expression "(uint)pcVar3 >> 8" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }" if (parenthesized_expression "(pcStack_150 <= pcVar22)" ( (binary_expression "pcStack_150 <= pcVar22" identifier <= identifier) )) (compound_statement "{\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }" { (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" identifier = (binary_expression "uStack_1c0 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar16,puVar19)" ( identifier , identifier ))) ;) (labeled_statement "LAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;" statement_identifier : (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;)) (expression_statement "*(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;" (assignment_expression "*(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1" (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(pcVar16 + 0xc) + 1" (pointer_expression "*(int *)(pcVar16 + 0xc)" * (cast_expression "(int *)(pcVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xc)" ( (binary_expression "pcVar16 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar21 = pcVar21 + 0xc;" (assignment_expression "pcVar21 = pcVar21 + 0xc" identifier = (binary_expression "pcVar21 + 0xc" identifier + number_literal)) ;) (if_statement "if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }" if (parenthesized_expression "(pcStack_15c == pcVar20)" ( (binary_expression "pcStack_15c == pcVar20" identifier == identifier) )) (compound_statement "{\n                    return pcStack_15c;\n                  }" { (return_statement "return pcStack_15c;" return identifier ;) })) (goto_statement "goto LAB_000ea478;" goto statement_identifier ;) })) (expression_statement "iVar2 = (int)pcVar22 * 0x10;" (assignment_expression "iVar2 = (int)pcVar22 * 0x10" identifier = (binary_expression "(int)pcVar22 * 0x10" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }" if (parenthesized_expression "(pcVar15 != (code *)0x0)" ( (binary_expression "pcVar15 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }" { (expression_statement "pcVar14 = pcVar15 + iVar2;" (assignment_expression "pcVar14 = pcVar15 + iVar2" identifier = (binary_expression "pcVar15 + iVar2" identifier + identifier)) ;) (expression_statement "uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);" (assignment_expression "uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" identifier = (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff)" ( (binary_expression "*(ushort *)(pcVar14 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" * (cast_expression "(ushort *)(pcVar14 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe)" ( (binary_expression "pcVar14 + 0xe" identifier + number_literal) )))) & number_literal) )) << number_literal) | (call_expression "(uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(ushort *)(pcVar14 + 0xe) >> 8)" ( (binary_expression "*(ushort *)(pcVar14 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" * (cast_expression "(ushort *)(pcVar14 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe)" ( (binary_expression "pcVar14 + 0xe" identifier + number_literal) )))) >> number_literal) ))))) ;) (if_statement "if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }" if (parenthesized_expression "(uVar17 < 0xff00)" ( (binary_expression "uVar17 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }" { (labeled_statement "LAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;" statement_identifier : (if_statement "if (uVar17 == 0) goto LAB_000ea4d4;" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000ea4d4;" goto statement_identifier ;))) (expression_statement "iVar11 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_1c8 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaabc;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;" if (parenthesized_expression "(*(int *)(piVar7[0xe] + uVar17 * 4) == 0)" ( (binary_expression "*(int *)(piVar7[0xe] + uVar17 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar17 * 4)" ( (binary_expression "piVar7[0xe] + uVar17 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000ea4f4;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" identifier = (subscript_expression "pcVar14[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }" else (compound_statement "{\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }" { (if_statement "if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }" if (parenthesized_expression "(uVar17 == 0xffff)" ( (binary_expression "uVar17 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }" { (expression_statement "iVar11 = piVar7[0xc];" (assignment_expression "iVar11 = piVar7[0xc]" identifier = (subscript_expression "piVar7[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_1b4 = pcVar3;" (assignment_expression "pcStack_1b4 = pcVar3" identifier = identifier) ;) (expression_statement "pcStack_1b0 = pcVar22;" (assignment_expression "pcStack_1b0 = pcVar22" identifier = identifier) ;) (expression_statement "iStack_1ac = iVar2;" (assignment_expression "iStack_1ac = iVar2" identifier = identifier) ;) (expression_statement "pcStack_1a8 = pcVar14;" (assignment_expression "pcStack_1a8 = pcVar14" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }" { (expression_statement "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);" (assignment_expression "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7)" identifier = (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" ( (pointer_expression "**(code **)(*piVar7 + 0x6c)" * (pointer_expression "*(code **)(*piVar7 + 0x6c)" * (cast_expression "(code **)(*piVar7 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x6c)" ( (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7)" ( identifier )))) ;) (expression_statement "piVar7[0xc] = iVar11;" (assignment_expression "piVar7[0xc] = iVar11" (subscript_expression "piVar7[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (uint)pcStack_1b4;" (assignment_expression "uVar17 = (uint)pcStack_1b4" identifier = (cast_expression "(uint)pcStack_1b4" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_1b4 = pcStack_1b0;" (assignment_expression "pcStack_1b4 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_1b0;" (assignment_expression "pcVar4 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcStack_1b0 = (code *)uVar17;" (assignment_expression "pcStack_1b0 = (code *)uVar17" identifier = (cast_expression "(code *)uVar17" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);" (assignment_expression "uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4)" identifier = (call_expression "(**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7790)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7790)" * (cast_expression "(code **)(pcStack_1c8 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7790)" ( (binary_expression "pcStack_1c8 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar7,pcVar4)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar3 = pcStack_1b0;" (assignment_expression "pcVar3 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar22 = pcStack_1b4;" (assignment_expression "pcVar22 = pcStack_1b4" identifier = identifier) ;) (expression_statement "iVar2 = iStack_1ac;" (assignment_expression "iVar2 = iStack_1ac" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_1a8;" (assignment_expression "pcVar14 = pcStack_1a8" identifier = identifier) ;) (goto_statement "goto LAB_000ea62c;" goto statement_identifier ;) })) (labeled_statement "LAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" identifier = (subscript_expression "pcVar14[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" { (if_statement "if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" if (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == pcStack_1b8)" ( (binary_expression "*(code **)(*piVar7 + 0x60) == pcStack_1b8" (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" { (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaa9c;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4)" identifier = (pointer_expression "*(int *)(piVar7[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar17 * 4)" ( (binary_expression "piVar7[0xe] + uVar17 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" else (compound_statement "{\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17)" identifier = (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,uVar17)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" ( (pointer_expression "**(code **)(*piVar7 + 0x60)" * (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,uVar17)" ( identifier , identifier )))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar17 & 0x7fffffff | 0x80000000" (binary_expression "uVar17 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_1c0._1_3_)" identifier (argument_list "(1,uStack_1c0._1_3_)" ( number_literal , (field_expression "uStack_1c0._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar16,puVar19)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" else (compound_statement "{\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" { (if_statement "if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;" if (parenthesized_expression "(((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0)" ( (binary_expression "((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0" (binary_expression "((uint)pcVar3 & 0xff) == 0" (parenthesized_expression "((uint)pcVar3 & 0xff)" ( (binary_expression "(uint)pcVar3 & 0xff" (cast_expression "(uint)pcVar3" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) && (binary_expression "pcVar22 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_000ea4f4;" goto statement_identifier ;)) (expression_statement "pcVar14 = (code *)(piVar7[0x3a] + iVar2);" (assignment_expression "pcVar14 = (code *)(piVar7[0x3a] + iVar2)" identifier = (cast_expression "(code *)(piVar7[0x3a] + iVar2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3a] + iVar2)" ( (binary_expression "piVar7[0x3a] + iVar2" (subscript_expression "piVar7[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;" if (parenthesized_expression "((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22)" ( (binary_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22" (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eaa64;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }" if (parenthesized_expression "((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2))" ( (binary_expression "(*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)" (parenthesized_expression "(*(int *)pcVar14 != 0)" ( (binary_expression "*(int *)pcVar14 != 0" (pointer_expression "*(int *)pcVar14" * (cast_expression "(int *)pcVar14" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar14 != -2)" ( (binary_expression "*(int *)pcVar14 != -2" (pointer_expression "*(int *)pcVar14" * (cast_expression "(int *)pcVar14" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }" { (expression_statement "iVar11 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_1c8 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcVar20;" (assignment_expression "pcVar4 = pcVar20" identifier = identifier) ;) (labeled_statement "LAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);" statement_identifier : (expression_statement "(**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7810)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7810)" * (cast_expression "(code **)(pcStack_1c8 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7810)" ( (binary_expression "pcStack_1c8 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0)" ( (binary_expression "*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_1c8 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1c8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x7fc4)" ( (binary_expression "pcStack_1c8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar11 + -0x48c0" identifier + number_literal) ))) ;)) (expression_statement "pcVar20 = pcVar4;" (assignment_expression "pcVar20 = pcVar4" identifier = identifier) ;) })) (expression_statement "*(int *)pcVar14 = -2;" (assignment_expression "*(int *)pcVar14 = -2" (pointer_expression "*(int *)pcVar14" * (cast_expression "(int *)pcVar14" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" identifier = (binary_expression "uStack_1c0 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar16,puVar19)" ( identifier , identifier ))) ;) }))) (goto_statement "goto LAB_000ea45c;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);" (call_expression "(**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_1c8 + -0x7810)" * (pointer_expression "*(code **)(pcStack_1c8 + -0x7810)" * (cast_expression "(code **)(pcStack_1c8 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_1c8 + -0x7810)" ( (binary_expression "pcStack_1c8 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938)" ( (binary_expression "*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_1c8 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1c8 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x7fc4)" ( (binary_expression "pcStack_1c8 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_1c8 + -0x77f0) + -0x4938" (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" * (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1c8 + -0x77f0)" ( (binary_expression "pcStack_1c8 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x489c" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) })) (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x48f0" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);" statement_identifier : (expression_statement "iVar11 = *(int *)(pcVar4 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcVar4 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar11 + -0x34dc" identifier + number_literal) ))) ;)) (labeled_statement "LAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4908" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "switchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);" statement_identifier : (expression_statement "pcVar14 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar14 = *(code **)(pcVar4 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar25 = FUN_000eab0c;" (assignment_expression "pcVar25 = FUN_000eab0c" identifier = identifier) ;) (expression_statement "(*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);" (call_expression "(*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4920" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar22 = pcStack_1b0;" (assignment_expression "pcVar22 = pcStack_1b0" identifier = identifier) ;) (expression_statement "pcVar3 = pcStack_1b4;" (assignment_expression "pcVar3 = pcStack_1b4" identifier = identifier) ;) (expression_statement "pcVar4 = pcVar14 + 0x3de734;" (assignment_expression "pcVar4 = pcVar14 + 0x3de734" identifier = (binary_expression "pcVar14 + 0x3de734" identifier + number_literal)) ;) (expression_statement "pcStack_1fc = pcVar15;" (assignment_expression "pcStack_1fc = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_208 = pcVar16;" (assignment_expression "pcStack_208 = pcVar16" identifier = identifier) ;) (expression_statement "uVar17 = (uint)bStack_1b9;" (assignment_expression "uVar17 = (uint)bStack_1b9" identifier = (cast_expression "(uint)bStack_1b9" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "piVar5 = piVar13;" (assignment_expression "piVar5 = piVar13" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_1c8;" (assignment_expression "pcVar15 = pcStack_1c8" identifier = identifier) ;) (expression_statement "pcStack_228 = pcVar4;" (assignment_expression "pcStack_228 = pcVar4" identifier = identifier) ;) (expression_statement "pcStack_204 = pcVar21;" (assignment_expression "pcStack_204 = pcVar21" identifier = identifier) ;) (expression_statement "pcStack_200 = pcVar24;" (assignment_expression "pcStack_200 = pcVar24" identifier = identifier) ;) (expression_statement "piStack_1f8 = piVar7;" (assignment_expression "piStack_1f8 = piVar7" identifier = identifier) ;) (expression_statement "pcStack_1f4 = pcVar20;" (assignment_expression "pcStack_1f4 = pcVar20" identifier = identifier) ;) (expression_statement "puStack_1f0 = puVar18;" (assignment_expression "puStack_1f0 = puVar18" identifier = identifier) ;) (expression_statement "puStack_1ec = puVar19;" (assignment_expression "puStack_1ec = puVar19" identifier = identifier) ;) (expression_statement "pcStack_1e8 = pcVar23;" (assignment_expression "pcStack_1e8 = pcVar23" identifier = identifier) ;) (expression_statement "pcStack_1e4 = pcVar25;" (assignment_expression "pcStack_1e4 = pcVar25" identifier = identifier) ;) (if_statement "if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }" if (parenthesized_expression "(iStack_1cc == 9)" ( (binary_expression "iStack_1cc == 9" identifier == number_literal) )) (compound_statement "{\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }" { (expression_statement "pcStack_218 = *(code **)(pcVar14 + 0x3d7018);" (assignment_expression "pcStack_218 = *(code **)(pcVar14 + 0x3d7018)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x3d7018)" * (cast_expression "(code **)(pcVar14 + 0x3d7018)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x3d7018)" ( (binary_expression "pcVar14 + 0x3d7018" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_218;" (assignment_expression "pcVar4 = pcStack_218" identifier = identifier) ;) (if_statement "if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }" if (parenthesized_expression "(pcStack_1c4 != (code *)0x0)" ( (binary_expression "pcStack_1c4 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }" { (expression_statement "pcVar20 = *(code **)(pcVar14 + 0x3d7050);" (assignment_expression "pcVar20 = *(code **)(pcVar14 + 0x3d7050)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x3d7050)" * (cast_expression "(code **)(pcVar14 + 0x3d7050)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x3d7050)" ( (binary_expression "pcVar14 + 0x3d7050" identifier + number_literal) ))))) ;) (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar18 = &uStack_220;" (assignment_expression "puVar18 = &uStack_220" identifier = (pointer_expression "&uStack_220" & identifier)) ;) (expression_statement "pcVar23 = (code *)&DAT_aaaaaaab;" (assignment_expression "pcVar23 = (code *)&DAT_aaaaaaab" identifier = (cast_expression "(code *)&DAT_aaaaaaab" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_aaaaaaab" & identifier))) ;) (do_statement "do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);" do (compound_statement "{\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  }" { (if_statement "if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }" { (labeled_statement "LAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);" statement_identifier : (expression_statement "pcVar21 = *(code **)(pcVar15 + 8);" (assignment_expression "pcVar21 = *(code **)(pcVar15 + 8)" identifier = (pointer_expression "*(code **)(pcVar15 + 8)" * (cast_expression "(code **)(pcVar15 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 8)" ( (binary_expression "pcVar15 + 8" identifier + number_literal) ))))) ;)) (if_statement "if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }" if (parenthesized_expression "(pcVar21 < pcStack_1b8)" ( (binary_expression "pcVar21 < pcStack_1b8" identifier < identifier) )) (compound_statement "{\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }" { (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if (pcVar3 == (code *)0x0) goto LAB_000eb138;" if (parenthesized_expression "(pcVar3 == (code *)0x0)" ( (binary_expression "pcVar3 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000eb138;" goto statement_identifier ;)) (expression_statement "iVar2 = (int)pcVar21 * 0x18;" (assignment_expression "iVar2 = (int)pcVar21 * 0x18" identifier = (binary_expression "(int)pcVar21 * 0x18" (cast_expression "(int)pcVar21" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar14 = pcVar3 + iVar2;" (assignment_expression "pcVar14 = pcVar3 + iVar2" identifier = (binary_expression "pcVar3 + iVar2" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar14 + 6);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar14 + 6)" identifier = (binary_expression "(uint)*(ushort *)(pcVar14 + 6)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar14 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 6)" ( (binary_expression "pcVar14 + 6" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }" { (labeled_statement "LAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000eaeb0;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eaeb0;" goto statement_identifier ;))) (expression_statement "iVar11 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb154;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;" if (parenthesized_expression "(*(int *)(piVar13[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar13[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" ( (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eaf54;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar14[4];" (assignment_expression "cVar1 = pcVar14[4]" identifier = (subscript_expression "pcVar14[4]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }" else (compound_statement "{\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }" { (if_statement "if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }" { (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" identifier = (subscript_expression "piVar13[0xc]" identifier [ number_literal ])) ;) (expression_statement "iStack_20c = iVar2;" (assignment_expression "iStack_20c = iVar2" identifier = identifier) ;) (expression_statement "pcStack_214 = pcVar21;" (assignment_expression "pcStack_214 = pcVar21" identifier = identifier) ;) (expression_statement "pcStack_210 = pcVar14;" (assignment_expression "pcStack_210 = pcVar14" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }" { (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13)" identifier = (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" ( (pointer_expression "**(code **)(*piVar13 + 0x6c)" * (pointer_expression "*(code **)(*piVar13 + 0x6c)" * (cast_expression "(code **)(*piVar13 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x6c)" ( (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13)" ( identifier )))) ;) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;" (assignment_expression "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7790)" * (pointer_expression "*(code **)(pcStack_228 + -0x7790)" * (cast_expression "(code **)(pcStack_228 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7790)" ( (binary_expression "pcStack_228 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar13,pcStack_214)" ( identifier , identifier , identifier )))) ;) (expression_statement "iVar2 = iStack_20c;" (assignment_expression "iVar2 = iStack_20c" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_214;" (assignment_expression "pcVar21 = pcStack_214" identifier = identifier) ;) (expression_statement "pcVar14 = pcStack_210;" (assignment_expression "pcVar14 = pcStack_210" identifier = identifier) ;) (goto_statement "goto LAB_000eafac;" goto statement_identifier ;) })) (labeled_statement "LAB_000eaeb0:\n                          cVar1 = pcVar14[4];" statement_identifier : (expression_statement "cVar1 = pcVar14[4];" (assignment_expression "cVar1 = pcVar14[4]" identifier = (subscript_expression "pcVar14[4]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" { (if_statement "if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" if (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcStack_218)" ( (binary_expression "*(code **)(*piVar13 + 0x60) == pcStack_218" (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" { (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb100;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" ( (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" else (compound_statement "{\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" { (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" identifier = (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" ( (pointer_expression "**(code **)(*piVar13 + 0x60)" * (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_220 = CONCAT13(2,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(2,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(2,uStack_220._1_3_)" identifier (argument_list "(2,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(pcVar22,puVar18)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" else (compound_statement "{\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" { (expression_statement "piVar7 = (int *)(piVar13[0x3a] + iVar2);" (assignment_expression "piVar7 = (int *)(piVar13[0x3a] + iVar2)" identifier = (cast_expression "(int *)(piVar13[0x3a] + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3a] + iVar2)" ( (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;" if (parenthesized_expression "((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21)" ( (binary_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21" (cast_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555)" ( (binary_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555" (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3)" ( (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 3" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar13[0x3a]" identifier [ number_literal ])) >> number_literal) )) * number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb0e4;" goto statement_identifier ;)) (expression_statement "iVar2 = *piVar7;" (assignment_expression "iVar2 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (if_statement "if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;" if (parenthesized_expression "((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))" ( (binary_expression "(iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2)" ( (comma_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) , (binary_expression "iVar2 != -2" identifier != number_literal)) ))) )) (goto_statement "goto LAB_000ead48;" goto statement_identifier ;)) (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" * identifier) = number_literal) ;) (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(pcVar22,puVar18)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }" else (compound_statement "{\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }" { (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(pcVar22,puVar18)" ( identifier , identifier ))) ;) }))) (expression_statement "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" * (cast_expression "(int *)((int)pcVar22 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar22 + 0xc)" ( (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" * (cast_expression "(int *)((int)pcVar22 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar22 + 0xc)" ( (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }" else (compound_statement "{\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }" { (expression_statement "pcStack_22c = *(code **)(pcVar15 + 4);" (assignment_expression "pcStack_22c = *(code **)(pcVar15 + 4)" identifier = (pointer_expression "*(code **)(pcVar15 + 4)" * (cast_expression "(code **)(pcVar15 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 4)" ( (binary_expression "pcVar15 + 4" identifier + number_literal) ))))) ;) (expression_statement "uStack_230 = *(undefined4 *)pcVar15;" (assignment_expression "uStack_230 = *(undefined4 *)pcVar15" identifier = (pointer_expression "*(undefined4 *)pcVar15" * (cast_expression "(undefined4 *)pcVar15" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);" (assignment_expression "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_228 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_228 + -0x76e0)" * (cast_expression "(code **)(pcStack_228 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x76e0)" ( (binary_expression "pcStack_228 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_1c0,piVar13,uStack_1d0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_000eae6c;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000eae6c;" goto statement_identifier ;)) (labeled_statement "LAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);" statement_identifier : (expression_statement "uStack_220 = CONCAT13(8,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(8,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_220._1_3_)" identifier (argument_list "(8,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(pcVar22,puVar18)" ( identifier , identifier ))) ;) }))) (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0x10;" (assignment_expression "pcVar15 = pcVar15 + 0x10" identifier = (binary_expression "pcVar15 + 0x10" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcStack_1c4;" (assignment_expression "pcVar4 = pcStack_1c4" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_1c4 != pcVar24)" ( (binary_expression "pcStack_1c4 != pcVar24" identifier != identifier) )) ;) })) }) (else_clause "else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }" else (compound_statement "{\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }" { (if_statement "if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }" if (parenthesized_expression "(iStack_1cc != 4)" ( (binary_expression "iStack_1cc != 4" identifier != number_literal) )) (compound_statement "{\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }" { (labeled_statement "LAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x40ec" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;" statement_identifier : (expression_statement "iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;" (assignment_expression "iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104" identifier = (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4104" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal)) ;)) (expression_statement "(**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);" (call_expression "(**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);" statement_identifier : (expression_statement "pcVar16 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar16 = *(code **)(pcVar4 + -0x7810)" identifier = (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) ;)) (expression_statement "pcVar25 = FUN_000eb16c;" (assignment_expression "pcVar25 = FUN_000eb16c" identifier = identifier) ;) (expression_statement "(*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);" (call_expression "(*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" (parenthesized_expression "(*pcVar16)" ( (pointer_expression "*pcVar16" * identifier) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar11 + -0x34dc" identifier + number_literal) ))) ;) (expression_statement "pcVar14 = pcStack_210;" (assignment_expression "pcVar14 = pcStack_210" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_214;" (assignment_expression "pcVar21 = pcStack_214" identifier = identifier) ;) (expression_statement "pcVar4 = pcStack_22c;" (assignment_expression "pcVar4 = pcStack_22c" identifier = identifier) ;) (expression_statement "pcStack_25c = pcVar3;" (assignment_expression "pcStack_25c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_268 = (uint)pcVar22;" (assignment_expression "uStack_268 = (uint)pcVar22" identifier = (cast_expression "(uint)pcVar22" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcStack_264 = pcVar15;" (assignment_expression "pcStack_264 = pcVar15" identifier = identifier) ;) (expression_statement "pcStack_260 = pcVar24;" (assignment_expression "pcStack_260 = pcVar24" identifier = identifier) ;) (expression_statement "piStack_258 = piVar13;" (assignment_expression "piStack_258 = piVar13" identifier = identifier) ;) (expression_statement "pcStack_254 = pcVar20;" (assignment_expression "pcStack_254 = pcVar20" identifier = identifier) ;) (expression_statement "puStack_250 = puVar18;" (assignment_expression "puStack_250 = puVar18" identifier = identifier) ;) (expression_statement "uStack_24c = uVar17;" (assignment_expression "uStack_24c = uVar17" identifier = identifier) ;) (expression_statement "pcStack_248 = pcVar23;" (assignment_expression "pcStack_248 = pcVar23" identifier = identifier) ;) (expression_statement "pcStack_244 = pcVar25;" (assignment_expression "pcStack_244 = pcVar25" identifier = identifier) ;) (if_statement "if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" if (parenthesized_expression "(pcStack_22c == (code *)0x9)" ( (binary_expression "pcStack_22c == (code *)0x9" identifier == (cast_expression "(code *)0x9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" { (expression_statement "pcVar3 = *(code **)(pcVar16 + 0x3d68e0);" (assignment_expression "pcVar3 = *(code **)(pcVar16 + 0x3d68e0)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d68e0)" * (cast_expression "(code **)(pcVar16 + 0x3d68e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68e0)" ( (binary_expression "pcVar16 + 0x3d68e0" identifier + number_literal) ))))) ;) (if_statement "if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" if (parenthesized_expression "(pcStack_224 != (code *)0x0)" ( (binary_expression "pcStack_224 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" { (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar2 = *(int *)(pcVar16 + 0x3d6110);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0x3d6110)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) ))))) ;) (expression_statement "pcVar15 = *(code **)(pcVar16 + 0x3d69b8);" (assignment_expression "pcVar15 = *(code **)(pcVar16 + 0x3d69b8)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d69b8)" * (cast_expression "(code **)(pcVar16 + 0x3d69b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69b8)" ( (binary_expression "pcVar16 + 0x3d69b8" identifier + number_literal) ))))) ;) (expression_statement "pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;" (assignment_expression "pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864" identifier = (binary_expression "*(code **)(pcVar16 + 0x3d68e0) + 0x1864" (pointer_expression "*(code **)(pcVar16 + 0x3d68e0)" * (cast_expression "(code **)(pcVar16 + 0x3d68e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68e0)" ( (binary_expression "pcVar16 + 0x3d68e0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar22 = pcStack_228;" (assignment_expression "pcVar22 = pcStack_228" identifier = identifier) ;) (do_statement "do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);" do (compound_statement "{\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      }" { (if_statement "if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }" if (parenthesized_expression "((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0))" ( (binary_expression "(cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)" (parenthesized_expression "(cStack_219 == '\0')" ( (binary_expression "cStack_219 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)" ( (comma_expression "iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0" (assignment_expression "iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)" identifier = (call_expression "(**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d69f4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d69f4)" * (cast_expression "(code **)(pcVar16 + 0x3d69f4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f4)" ( (binary_expression "pcVar16 + 0x3d69f4" identifier + number_literal) ))))) )) (argument_list "(uStack_220,piVar5,uStack_230)" ( identifier , identifier , identifier )))) , (binary_expression "iVar11 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }" { (expression_statement "pcVar3 = *(code **)(pcVar22 + 8);" (assignment_expression "pcVar3 = *(code **)(pcVar22 + 8)" identifier = (pointer_expression "*(code **)(pcVar22 + 8)" * (cast_expression "(code **)(pcVar22 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 8)" ( (binary_expression "pcVar22 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" if (parenthesized_expression "(pcVar3 < pcStack_218)" ( (binary_expression "pcVar3 < pcStack_218" identifier < identifier) )) (compound_statement "{\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" { (if_statement "if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }" if (parenthesized_expression "(pcVar21 == (code *)0x0)" ( (binary_expression "pcVar21 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }" { (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x39d4" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "iVar11 = (int)pcVar3 * 0x18;" (assignment_expression "iVar11 = (int)pcVar3 * 0x18" identifier = (binary_expression "(int)pcVar3 * 0x18" (cast_expression "(int)pcVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar24 = pcVar21 + iVar11;" (assignment_expression "pcVar24 = pcVar21 + iVar11" identifier = (binary_expression "pcVar21 + iVar11" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar24 + 6);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar24 + 6)" identifier = (binary_expression "(uint)*(ushort *)(pcVar24 + 6)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar24 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar24 + 6)" ( (binary_expression "pcVar24 + 6" identifier + number_literal) ))))) ;) (expression_statement "uVar17 = (uint)(byte)pcVar22[0xf];" (assignment_expression "uVar17 = (uint)(byte)pcVar22[0xf]" identifier = (cast_expression "(uint)(byte)pcVar22[0xf]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)pcVar22[0xf]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "pcVar22[0xf]" identifier [ number_literal ])))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }" { (labeled_statement "LAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000eb52c;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eb52c;" goto statement_identifier ;))) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (compound_statement "{\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }" { (expression_statement "iVar2 = *(int *)(pcVar16 + 0x3d68e4);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0x3d68e4)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000eb860;" goto statement_identifier ;) })) (if_statement "if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;" if (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar5[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eb5c8;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar24[4];" (assignment_expression "cVar1 = pcVar24[4]" identifier = (subscript_expression "pcVar24[4]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }" else (compound_statement "{\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }" { (if_statement "if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }" { (expression_statement "iVar12 = piVar5[0xc];" (assignment_expression "iVar12 = piVar5[0xc]" identifier = (subscript_expression "piVar5[0xc]" identifier [ number_literal ])) ;) (expression_statement "iStack_270 = iVar11;" (assignment_expression "iStack_270 = iVar11" identifier = identifier) ;) (expression_statement "pcStack_27c = pcVar3;" (assignment_expression "pcStack_27c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_278 = uVar17;" (assignment_expression "uStack_278 = uVar17" identifier = identifier) ;) (expression_statement "pcStack_274 = pcVar24;" (assignment_expression "pcStack_274 = pcVar24" identifier = identifier) ;) (if_statement "if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }" { (expression_statement "iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);" (assignment_expression "iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288)" identifier = (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" ( (pointer_expression "**(code **)(*piVar5 + 0x6c)" * (pointer_expression "*(code **)(*piVar5 + 0x6c)" * (cast_expression "(code **)(*piVar5 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x6c)" ( (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,auStack_288)" ( identifier , identifier )))) ;) (expression_statement "piVar5[0xc] = iVar12;" (assignment_expression "piVar5[0xc] = iVar12" (subscript_expression "piVar5[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;" (assignment_expression "uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)" identifier = (call_expression "(**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d6944))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d6944)" * (pointer_expression "*(code **)(pcVar16 + 0x3d6944)" * (cast_expression "(code **)(pcVar16 + 0x3d6944)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d6944)" ( (binary_expression "pcVar16 + 0x3d6944" identifier + number_literal) ))))) )) (argument_list "(iVar12,piVar5,pcStack_27c)" ( identifier , identifier , identifier )))) ;) (expression_statement "iVar11 = iStack_270;" (assignment_expression "iVar11 = iStack_270" identifier = identifier) ;) (expression_statement "pcVar3 = pcStack_27c;" (assignment_expression "pcVar3 = pcStack_27c" identifier = identifier) ;) (expression_statement "uVar17 = uStack_278;" (assignment_expression "uVar17 = uStack_278" identifier = identifier) ;) (expression_statement "pcVar24 = pcStack_274;" (assignment_expression "pcVar24 = pcStack_274" identifier = identifier) ;) (goto_statement "goto LAB_000eb628;" goto statement_identifier ;) })) (labeled_statement "LAB_000eb52c:\n                              cVar1 = pcVar24[4];" statement_identifier : (expression_statement "cVar1 = pcVar24[4];" (assignment_expression "cVar1 = pcVar24[4]" identifier = (subscript_expression "pcVar24[4]" identifier [ number_literal ])) ;)) }))) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }" if (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" ( (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }" { (if_statement "if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;" if (parenthesized_expression "((uVar17 == 0) && (pcVar3 == (code *)0x0))" ( (binary_expression "(uVar17 == 0) && (pcVar3 == (code *)0x0)" (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) && (parenthesized_expression "(pcVar3 == (code *)0x0)" ( (binary_expression "pcVar3 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000eb5c8;" goto statement_identifier ;)) (expression_statement "piVar7 = (int *)(piVar5[0x3a] + iVar11);" (assignment_expression "piVar7 = (int *)(piVar5[0x3a] + iVar11)" identifier = (cast_expression "(int *)(piVar5[0x3a] + iVar11)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x3a] + iVar11)" ( (binary_expression "piVar5[0x3a] + iVar11" (subscript_expression "piVar5[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }" if (parenthesized_expression "(pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   ))" ( (binary_expression "pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )" identifier < (cast_expression "(code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )" ( (binary_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555" (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3)" ( (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 3" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar5[0x3a]" identifier [ number_literal ])) >> number_literal) )) * number_literal) )))) )) (compound_statement "{\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }" { (expression_statement "iVar11 = *piVar7;" (assignment_expression "iVar11 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (if_statement "if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }" if (parenthesized_expression "((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2))" ( (binary_expression "(iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)" (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)" ( (comma_expression "iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2" (assignment_expression "iVar12 = *(int *)(pcVar16 + 0x3d68e4)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) ))))) , (binary_expression "iVar11 == -2" identifier == number_literal)) ))) )) (compound_statement "{\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }" { (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" * identifier) = number_literal) ;) (goto_statement "goto LAB_000eb4ac;" goto statement_identifier ;) })) (goto_statement "goto LAB_000eb2d8;" goto statement_identifier ;) })) (goto_statement "goto LAB_000eb808;" goto statement_identifier ;) })) (if_statement "if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }" if (parenthesized_expression "(uVar17 != 4)" ( (binary_expression "uVar17 != 4" identifier != number_literal) )) (compound_statement "{\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }" { (expression_statement "pcStack_27c = (code *)uVar6;" (assignment_expression "pcStack_27c = (code *)uVar6" identifier = (cast_expression "(code *)uVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar17 = (*pcStack_280)(uVar17,piVar5);" (assignment_expression "uVar17 = (*pcStack_280)(uVar17,piVar5)" identifier = (call_expression "(*pcStack_280)(uVar17,piVar5)" (parenthesized_expression "(*pcStack_280)" ( (pointer_expression "*pcStack_280" * identifier) )) (argument_list "(uVar17,piVar5)" ( identifier , identifier )))) ;) (if_statement "if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }" if (parenthesized_expression "(uVar17 < 9)" ( (binary_expression "uVar17 < 9" identifier < number_literal) )) (compound_statement "{\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }" { (expression_statement "pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();" (assignment_expression "pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )()" identifier = (cast_expression "(code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )()" (parenthesized_expression "(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )" ( (pointer_expression "*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)" * (parenthesized_expression "(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)" ( (binary_expression "pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4" (binary_expression "pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4)" identifier + (pointer_expression "*(int *)(iVar2 + 0x5490 + uVar17 * 4)" * (cast_expression "(int *)(iVar2 + 0x5490 + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x5490 + uVar17 * 4)" ( (binary_expression "iVar2 + 0x5490 + uVar17 * 4" (binary_expression "iVar2 + 0x5490" identifier + number_literal) + (binary_expression "uVar17 * 4" identifier * number_literal)) ))))) + number_literal) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x39d4" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (if_statement "if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }" if (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcVar15)" ( (binary_expression "*(code **)(*piVar5 + 0x60) == pcVar15" (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }" { (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb840;" goto statement_identifier ;)) (expression_statement "iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);" (assignment_expression "iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" ( (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "pcStack_27c = pcVar4;" (assignment_expression "pcStack_27c = pcVar4" identifier = identifier) ;) }) (else_clause "else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }" else (compound_statement "{\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }" { (expression_statement "pcStack_27c = pcVar4;" (assignment_expression "pcStack_27c = pcVar4" identifier = identifier) ;) (expression_statement "iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);" (assignment_expression "iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" identifier = (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" ( (pointer_expression "**(code **)(*piVar5 + 0x60)" * (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,uVar6)" ( identifier , identifier )))) ;) }))) (expression_statement "pcVar3 = *(code **)(pcVar16 + 0x3d69f0);" (assignment_expression "pcVar3 = *(code **)(pcVar16 + 0x3d69f0)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" * (cast_expression "(code **)(pcVar16 + 0x3d69f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f0)" ( (binary_expression "pcVar16 + 0x3d69f0" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar11 + 0x98)" * (cast_expression "(uint *)(iVar11 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x98)" ( (binary_expression "iVar11 + 0x98" identifier + number_literal) )))) = (binary_expression "*(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar11 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar11 + 0x98)" * (cast_expression "(uint *)(iVar11 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x98)" ( (binary_expression "iVar11 + 0x98" identifier + number_literal) )))) & number_literal) | number_literal)) ;) (expression_statement "auStack_288[0] = SUB41(pcStack_27c,0);" (assignment_expression "auStack_288[0] = SUB41(pcStack_27c,0)" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = (call_expression "SUB41(pcStack_27c,0)" identifier (argument_list "(pcStack_27c,0)" ( identifier , number_literal )))) ;) (expression_statement "(*pcVar3)(pcVar14,auStack_288);" (call_expression "(*pcVar3)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) (if_statement "if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;" if (parenthesized_expression "(pcStack_27c == (code *)&DAT_00000008)" ( (binary_expression "pcStack_27c == (code *)&DAT_00000008" identifier == (cast_expression "(code *)&DAT_00000008" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) )) (goto_statement "goto LAB_000eb4cc;" goto statement_identifier ;)) (expression_statement "iVar11 = *(int *)(pcVar14 + 0xc);" (assignment_expression "iVar11 = *(int *)(pcVar14 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) ))))) ;) }) (else_clause "else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" else (compound_statement "{\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" { (labeled_statement "LAB_000eb4ac:\n                            auStack_288[0] = 0;" statement_identifier : (expression_statement "auStack_288[0] = 0;" (assignment_expression "auStack_288[0] = 0" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);" (call_expression "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f0))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d69f0)" * (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" * (cast_expression "(code **)(pcVar16 + 0x3d69f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f0)" ( (binary_expression "pcVar16 + 0x3d69f0" identifier + number_literal) ))))) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) (expression_statement "iVar11 = *(int *)(pcVar14 + 0xc);" (assignment_expression "iVar11 = *(int *)(pcVar14 + 0xc)" identifier = (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) ))))) ;) }))) (expression_statement "*(int *)(pcVar14 + 0xc) = iVar11 + 1;" (assignment_expression "*(int *)(pcVar14 + 0xc) = iVar11 + 1" (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) )))) = (binary_expression "iVar11 + 1" identifier + number_literal)) ;) }) (else_clause "else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }" else (compound_statement "{\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }" { (labeled_statement "LAB_000eb5c8:\n                          auStack_288[0] = 8;" statement_identifier : (expression_statement "auStack_288[0] = 8;" (assignment_expression "auStack_288[0] = 8" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);" (call_expression "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f0))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d69f0)" * (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" * (cast_expression "(code **)(pcVar16 + 0x3d69f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f0)" ( (binary_expression "pcVar16 + 0x3d69f0" identifier + number_literal) ))))) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) }))) (labeled_statement "LAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;" statement_identifier : (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;)) (expression_statement "pcVar22 = pcVar22 + 0x10;" (assignment_expression "pcVar22 = pcVar22 + 0x10" identifier = (binary_expression "pcVar22 + 0x10" identifier + number_literal)) ;) (expression_statement "pcVar3 = pcStack_224;" (assignment_expression "pcVar3 = pcStack_224" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_224 != pcVar20)" ( (binary_expression "pcStack_224 != pcVar20" identifier != identifier) )) ;) })) }) (else_clause "else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" else (compound_statement "{\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" { (if_statement "if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }" if (parenthesized_expression "(pcStack_22c != (code *)&DAT_00000004)" ( (binary_expression "pcStack_22c != (code *)&DAT_00000004" identifier != (cast_expression "(code *)&DAT_00000004" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) )) (compound_statement "{\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }" { (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x3588" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) + -0x4158" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);" (assignment_expression "pcStack_280 = *(code **)(pcVar16 + 0x3d69b8)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d69b8)" * (cast_expression "(code **)(pcVar16 + 0x3d69b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69b8)" ( (binary_expression "pcVar16 + 0x3d69b8" identifier + number_literal) ))))) ;) (expression_statement "pcVar3 = pcStack_280;" (assignment_expression "pcVar3 = pcStack_280" identifier = identifier) ;) (if_statement "if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" if (parenthesized_expression "(pcStack_224 != (code *)0x0)" ( (binary_expression "pcStack_224 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" { (expression_statement "pcVar22 = *(code **)(pcVar16 + 0x3d69f0);" (assignment_expression "pcVar22 = *(code **)(pcVar16 + 0x3d69f0)" identifier = (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" * (cast_expression "(code **)(pcVar16 + 0x3d69f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f0)" ( (binary_expression "pcVar16 + 0x3d69f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (do_statement "do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);" do (compound_statement "{\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      }" { (while_statement "while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }" while (parenthesized_expression "((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0)))" ( (parenthesized_expression "(cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))" ( (binary_expression "cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0)" (binary_expression "cStack_219 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0)" ( (comma_expression "iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0" (assignment_expression "iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230)" identifier = (call_expression "(**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d69f4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d69f4)" * (cast_expression "(code **)(pcVar16 + 0x3d69f4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d69f4)" ( (binary_expression "pcVar16 + 0x3d69f4" identifier + number_literal) ))))) )) (argument_list "(uStack_220,piVar5,uStack_230)" ( identifier , identifier , identifier )))) , (binary_expression "iVar2 == 0" identifier == number_literal)) ))) )) )) (compound_statement "{\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }" { (labeled_statement "LAB_000eb42c:\n                          auStack_288[0] = 8;" statement_identifier : (expression_statement "auStack_288[0] = 8;" (assignment_expression "auStack_288[0] = 8" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcVar4 + 0x18;" (assignment_expression "pcVar4 = pcVar4 + 0x18" identifier = (binary_expression "pcVar4 + 0x18" identifier + number_literal)) ;) (if_statement "if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }" if (parenthesized_expression "(pcStack_224 == pcVar20)" ( (binary_expression "pcStack_224 == pcVar20" identifier == identifier) )) (compound_statement "{\n                            return pcStack_224;\n                          }" { (return_statement "return pcStack_224;" return identifier ;) })) })) (expression_statement "pcVar3 = *(code **)(pcVar4 + 8);" (assignment_expression "pcVar3 = *(code **)(pcVar4 + 8)" identifier = (pointer_expression "*(code **)(pcVar4 + 8)" * (cast_expression "(code **)(pcVar4 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 8)" ( (binary_expression "pcVar4 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }" if (parenthesized_expression "(pcVar3 < pcStack_218)" ( (binary_expression "pcVar3 < pcStack_218" identifier < identifier) )) (compound_statement "{\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }" { (if_statement "if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }" if (parenthesized_expression "(pcVar21 == (code *)0x0)" ( (binary_expression "pcVar21 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }" { (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x39d4" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) + -0x41a0" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "iVar11 = (int)pcVar3 * 0x18;" (assignment_expression "iVar11 = (int)pcVar3 * 0x18" identifier = (binary_expression "(int)pcVar3 * 0x18" (cast_expression "(int)pcVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar15 = pcVar21 + iVar11;" (assignment_expression "pcVar15 = pcVar21 + iVar11" identifier = (binary_expression "pcVar21 + iVar11" identifier + identifier)) ;) (expression_statement "uVar17 = (uint)*(ushort *)(pcVar15 + 6);" (assignment_expression "uVar17 = (uint)*(ushort *)(pcVar15 + 6)" identifier = (binary_expression "(uint)*(ushort *)(pcVar15 + 6)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar15 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 6)" ( (binary_expression "pcVar15 + 6" identifier + number_literal) ))))) ;) (expression_statement "uVar6 = (uint)(byte)pcVar4[0xf];" (assignment_expression "uVar6 = (uint)(byte)pcVar4[0xf]" identifier = (cast_expression "(uint)(byte)pcVar4[0xf]" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)pcVar4[0xf]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "pcVar4[0xf]" identifier [ number_literal ])))) ;) (if_statement "if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }" if (parenthesized_expression "(uVar17 < 0xff00)" ( (binary_expression "uVar17 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }" { (labeled_statement "LAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;" statement_identifier : (if_statement "if (uVar17 == 0) goto LAB_000eb278;" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eb278;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcVar16 + 0x3d68e4);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0x3d68e4)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) ))))) ;) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (compound_statement "{\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }" { (labeled_statement "LAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);" statement_identifier : (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x34dc" identifier + number_literal) ))))) ;)) (return_statement "return pcVar4;" return identifier ;) })) (if_statement "if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;" if (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar17 * 4) == 0)" ( (binary_expression "*(int *)(piVar5[0xe] + uVar17 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar17 * 4)" ( (binary_expression "piVar5[0xe] + uVar17 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eb42c;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar15[4];" (assignment_expression "cVar1 = pcVar15[4]" identifier = (subscript_expression "pcVar15[4]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }" else (compound_statement "{\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }" { (if_statement "if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }" if (parenthesized_expression "(uVar17 == 0xffff)" ( (binary_expression "uVar17 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }" { (expression_statement "iVar2 = piVar5[0xc];" (assignment_expression "iVar2 = piVar5[0xc]" identifier = (subscript_expression "piVar5[0xc]" identifier [ number_literal ])) ;) (expression_statement "iStack_270 = iVar11;" (assignment_expression "iStack_270 = iVar11" identifier = identifier) ;) (expression_statement "pcStack_27c = pcVar3;" (assignment_expression "pcStack_27c = pcVar3" identifier = identifier) ;) (expression_statement "uStack_278 = uVar6;" (assignment_expression "uStack_278 = uVar6" identifier = identifier) ;) (expression_statement "pcStack_274 = pcVar15;" (assignment_expression "pcStack_274 = pcVar15" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5)" identifier = (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" ( (pointer_expression "**(code **)(*piVar5 + 0x6c)" * (pointer_expression "*(code **)(*piVar5 + 0x6c)" * (cast_expression "(code **)(*piVar5 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x6c)" ( (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5)" ( identifier )))) ;) (expression_statement "piVar5[0xc] = iVar2;" (assignment_expression "piVar5[0xc] = iVar2" (subscript_expression "piVar5[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);" (assignment_expression "uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c)" identifier = (call_expression "(**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d6944))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d6944)" * (pointer_expression "*(code **)(pcVar16 + 0x3d6944)" * (cast_expression "(code **)(pcVar16 + 0x3d6944)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d6944)" ( (binary_expression "pcVar16 + 0x3d6944" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar5,pcStack_27c)" ( identifier , identifier , identifier )))) ;) (expression_statement "iVar11 = iStack_270;" (assignment_expression "iVar11 = iStack_270" identifier = identifier) ;) (expression_statement "pcVar3 = pcStack_27c;" (assignment_expression "pcVar3 = pcStack_27c" identifier = identifier) ;) (expression_statement "uVar6 = uStack_278;" (assignment_expression "uVar6 = uStack_278" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_274;" (assignment_expression "pcVar15 = pcStack_274" identifier = identifier) ;) (goto_statement "goto LAB_000eb354;" goto statement_identifier ;) })) (labeled_statement "LAB_000eb278:\n                            cVar1 = pcVar15[4];" statement_identifier : (expression_statement "cVar1 = pcVar15[4];" (assignment_expression "cVar1 = pcVar15[4]" identifier = (subscript_expression "pcVar15[4]" identifier [ number_literal ])) ;)) }))) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" { (if_statement "if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" if (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcStack_280)" ( (binary_expression "*(code **)(*piVar5 + 0x60) == pcStack_280" (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" { (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }" if (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17)" ( (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" ( (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar5[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (compound_statement "{\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }" { (labeled_statement "LAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);" statement_identifier : (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;)) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);" (assignment_expression "iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4)" identifier = (pointer_expression "*(int *)(piVar5[0xe] + uVar17 * 4)" * (cast_expression "(int *)(piVar5[0xe] + uVar17 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0xe] + uVar17 * 4)" ( (binary_expression "piVar5[0xe] + uVar17 * 4" (subscript_expression "piVar5[0xe]" identifier [ number_literal ]) + (binary_expression "uVar17 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" else (compound_statement "{\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" { (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17)" identifier = (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar17)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" ( (pointer_expression "**(code **)(*piVar5 + 0x60)" * (pointer_expression "*(code **)(*piVar5 + 0x60)" * (cast_expression "(code **)(*piVar5 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar5 + 0x60)" ( (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" * identifier) + number_literal) ))))) )) (argument_list "(piVar5,uVar17)" ( identifier , identifier )))) ;) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar17 & 0x7fffffff | 0x80000000" (binary_expression "uVar17 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "auStack_288[0] = 1;" (assignment_expression "auStack_288[0] = 1" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" else (compound_statement "{\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" { (if_statement "if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;" if (parenthesized_expression "((uVar6 == 0) && (pcVar3 == (code *)0x0))" ( (binary_expression "(uVar6 == 0) && (pcVar3 == (code *)0x0)" (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) && (parenthesized_expression "(pcVar3 == (code *)0x0)" ( (binary_expression "pcVar3 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000eb42c;" goto statement_identifier ;)) (expression_statement "piVar7 = (int *)(piVar5[0x3a] + iVar11);" (assignment_expression "piVar7 = (int *)(piVar5[0x3a] + iVar11)" identifier = (cast_expression "(int *)(piVar5[0x3a] + iVar11)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x3a] + iVar11)" ( (binary_expression "piVar5[0x3a] + iVar11" (subscript_expression "piVar5[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }" if (parenthesized_expression "((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               )" ( (binary_expression "(code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3" (cast_expression "(code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555)" ( (binary_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555" (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3)" ( (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 3" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar5[0x3a]" identifier [ number_literal ])) >> number_literal) )) * number_literal) ))) <= identifier) )) (compound_statement "{\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }" { (labeled_statement "LAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);" statement_identifier : (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) )))) + number_literal) ))))) ;)) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "iVar2 = *piVar7;" (assignment_expression "iVar2 = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (if_statement "if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }" if (parenthesized_expression "((iVar2 != 0) && (iVar2 != -2))" ( (binary_expression "(iVar2 != 0) && (iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar2 != -2)" ( (binary_expression "iVar2 != -2" identifier != number_literal) ))) )) (compound_statement "{\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }" { (expression_statement "iVar12 = *(int *)(pcVar16 + 0x3d68e4);" (assignment_expression "iVar12 = *(int *)(pcVar16 + 0x3d68e4)" identifier = (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" * (cast_expression "(int *)(pcVar16 + 0x3d68e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d68e4)" ( (binary_expression "pcVar16 + 0x3d68e4" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);" statement_identifier : (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" identifier = (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" ( (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" * (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" * (cast_expression "(code **)(pcVar16 + 0x3d68c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0x3d68c4)" ( (binary_expression "pcVar16 + 0x3d68c4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" ( (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" * (cast_expression "(int *)(pcVar16 + 0x3d6110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0x3d6110)" ( (binary_expression "pcVar16 + 0x3d6110" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar12 + -0x3524" identifier + number_literal) ))))) ;)) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" * identifier) = number_literal) ;) (expression_statement "auStack_288[0] = 0;" (assignment_expression "auStack_288[0] = 0" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }" else (compound_statement "{\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }" { (expression_statement "auStack_288[0] = 0;" (assignment_expression "auStack_288[0] = 0" (subscript_expression "auStack_288[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(pcVar14,auStack_288)" ( identifier , identifier ))) ;) }))) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "*(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;" (assignment_expression "*(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1" (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(pcVar14 + 0xc) + 1" (pointer_expression "*(int *)(pcVar14 + 0xc)" * (cast_expression "(int *)(pcVar14 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xc)" ( (binary_expression "pcVar14 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar4 = pcVar4 + 0x18;" (assignment_expression "pcVar4 = pcVar4 + 0x18" identifier = (binary_expression "pcVar4 + 0x18" identifier + number_literal)) ;) (expression_statement "pcVar3 = pcStack_224;" (assignment_expression "pcVar3 = pcStack_224" identifier = identifier) ;) }) while (parenthesized_expression "(pcStack_224 != pcVar20)" ( (binary_expression "pcStack_224 != pcVar20" identifier != identifier) )) ;) })) }))) (return_statement "return pcVar3;" return identifier ;) })) (expression_statement "pcStack_218 = *(code **)(pcVar14 + 0x3d7018);" (assignment_expression "pcStack_218 = *(code **)(pcVar14 + 0x3d7018)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x3d7018)" * (cast_expression "(code **)(pcVar14 + 0x3d7018)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x3d7018)" ( (binary_expression "pcVar14 + 0x3d7018" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_218;" (assignment_expression "pcVar4 = pcStack_218" identifier = identifier) ;) (if_statement "if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }" if (parenthesized_expression "(pcStack_1c4 != (code *)0x0)" ( (binary_expression "pcStack_1c4 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }" { (expression_statement "pcVar24 = *(code **)(pcVar14 + 0x3d7050);" (assignment_expression "pcVar24 = *(code **)(pcVar14 + 0x3d7050)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x3d7050)" * (cast_expression "(code **)(pcVar14 + 0x3d7050)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x3d7050)" ( (binary_expression "pcVar14 + 0x3d7050" identifier + number_literal) ))))) ;) (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar23 = (code *)&uStack_220;" (assignment_expression "pcVar23 = (code *)&uStack_220" identifier = (cast_expression "(code *)&uStack_220" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_220" & identifier))) ;) (expression_statement "puVar18 = (uint *)&DAT_aaaaaaab;" (assignment_expression "puVar18 = (uint *)&DAT_aaaaaaab" identifier = (cast_expression "(uint *)&DAT_aaaaaaab" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_aaaaaaab" & identifier))) ;) (labeled_statement "LAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }" statement_identifier : (while_statement "while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }" while (parenthesized_expression "(uVar17 != 0)" ( (binary_expression "uVar17 != 0" identifier != number_literal) )) (compound_statement "{\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }" { (expression_statement "pcStack_22c = *(code **)(pcVar15 + 4);" (assignment_expression "pcStack_22c = *(code **)(pcVar15 + 4)" identifier = (pointer_expression "*(code **)(pcVar15 + 4)" * (cast_expression "(code **)(pcVar15 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 4)" ( (binary_expression "pcVar15 + 4" identifier + number_literal) ))))) ;) (expression_statement "uStack_230 = *(undefined4 *)pcVar15;" (assignment_expression "uStack_230 = *(undefined4 *)pcVar15" identifier = (pointer_expression "*(undefined4 *)pcVar15" * (cast_expression "(undefined4 *)pcVar15" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);" (assignment_expression "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_228 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_228 + -0x76e0)" * (cast_expression "(code **)(pcStack_228 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x76e0)" ( (binary_expression "pcStack_228 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(uStack_1c0,piVar13,uStack_1d0)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);" statement_identifier : (expression_statement "uStack_220 = CONCAT13(8,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(8,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_220._1_3_)" identifier (argument_list "(8,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar22,pcVar23)" ( identifier , identifier ))) ;) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0x18;" (assignment_expression "pcVar15 = pcVar15 + 0x18" identifier = (binary_expression "pcVar15 + 0x18" identifier + number_literal)) ;) (if_statement "if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }" if (parenthesized_expression "(pcStack_1c4 == pcVar20)" ( (binary_expression "pcStack_1c4 == pcVar20" identifier == identifier) )) (compound_statement "{\n                      return pcStack_1c4;\n                    }" { (return_statement "return pcStack_1c4;" return identifier ;) })) }))) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (expression_statement "pcVar14 = *(code **)(pcVar15 + 8);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 8)" identifier = (pointer_expression "*(code **)(pcVar15 + 8)" * (cast_expression "(code **)(pcVar15 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 8)" ( (binary_expression "pcVar15 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }" if (parenthesized_expression "(pcVar14 < pcStack_1b8)" ( (binary_expression "pcVar14 < pcStack_1b8" identifier < identifier) )) (compound_statement "{\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }" { (if_statement "if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }" if (parenthesized_expression "(pcVar3 == (code *)0x0)" ( (binary_expression "pcVar3 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }" { (expression_statement "(**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);" (call_expression "(**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7810)" * (pointer_expression "*(code **)(pcStack_228 + -0x7810)" * (cast_expression "(code **)(pcStack_228 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7810)" ( (binary_expression "pcStack_228 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140)" ( (binary_expression "*(int *)(pcStack_228 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_228 + -0x7fc4)" * (cast_expression "(int *)(pcStack_228 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x7fc4)" ( (binary_expression "pcStack_228 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_228 + -0x77f0) + -0x4140" (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4128" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (labeled_statement "LAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" ( (pointer_expression "**(code **)(pcVar4 + -0x7810)" * (pointer_expression "*(code **)(pcVar4 + -0x7810)" * (cast_expression "(code **)(pcVar4 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + -0x7810)" ( (binary_expression "pcVar4 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" * (cast_expression "(int *)(pcVar4 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x7fc4)" ( (binary_expression "pcVar4 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" * (cast_expression "(int *)(pcVar4 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar4 + -0x77f0)" ( (binary_expression "pcVar4 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (goto_statement "goto LAB_000eb11c;" goto statement_identifier ;) })) (expression_statement "iVar2 = (int)pcVar14 * 0x18;" (assignment_expression "iVar2 = (int)pcVar14 * 0x18" identifier = (binary_expression "(int)pcVar14 * 0x18" (cast_expression "(int)pcVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "pcVar21 = pcVar3 + iVar2;" (assignment_expression "pcVar21 = pcVar3 + iVar2" identifier = (binary_expression "pcVar3 + iVar2" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar21 + 6);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar21 + 6)" identifier = (binary_expression "(uint)*(ushort *)(pcVar21 + 6)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar21 + 6)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 6)" ( (binary_expression "pcVar21 + 6" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }" { (labeled_statement "LAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000eac14;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000eac14;" goto statement_identifier ;))) (expression_statement "iVar11 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb154;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;" if (parenthesized_expression "(*(int *)(piVar13[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar13[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" ( (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000eacb4;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar21[4];" (assignment_expression "cVar1 = pcVar21[4]" identifier = (subscript_expression "pcVar21[4]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }" else (compound_statement "{\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }" { (if_statement "if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }" { (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" identifier = (subscript_expression "piVar13[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_214 = pcVar14;" (assignment_expression "pcStack_214 = pcVar14" identifier = identifier) ;) (expression_statement "iStack_20c = iVar2;" (assignment_expression "iStack_20c = iVar2" identifier = identifier) ;) (expression_statement "pcStack_210 = pcVar21;" (assignment_expression "pcStack_210 = pcVar21" identifier = identifier) ;) (if_statement "if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }" { (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13)" identifier = (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" ( (pointer_expression "**(code **)(*piVar13 + 0x6c)" * (pointer_expression "*(code **)(*piVar13 + 0x6c)" * (cast_expression "(code **)(*piVar13 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x6c)" ( (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13)" ( identifier )))) ;) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);" (assignment_expression "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" identifier = (call_expression "(**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7790)" * (pointer_expression "*(code **)(pcStack_228 + -0x7790)" * (cast_expression "(code **)(pcStack_228 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7790)" ( (binary_expression "pcStack_228 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar11,piVar13,pcStack_214)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar14 = pcStack_214;" (assignment_expression "pcVar14 = pcStack_214" identifier = identifier) ;) (expression_statement "iVar2 = iStack_20c;" (assignment_expression "iVar2 = iStack_20c" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_210;" (assignment_expression "pcVar21 = pcStack_210" identifier = identifier) ;) (goto_statement "goto LAB_000eadbc;" goto statement_identifier ;) })) (labeled_statement "LAB_000eac14:\n                      cVar1 = pcVar21[4];" statement_identifier : (expression_statement "cVar1 = pcVar21[4];" (assignment_expression "cVar1 = pcVar21[4]" identifier = (subscript_expression "pcVar21[4]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" if (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" ( (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" { (if_statement "if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" if (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcStack_218)" ( (binary_expression "*(code **)(*piVar13 + 0x60) == pcStack_218" (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" { (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;" if (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" ( (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar13[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000eb100;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" ( (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" else (compound_statement "{\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" { (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" identifier = (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" ( (pointer_expression "**(code **)(*piVar13 + 0x60)" * (pointer_expression "*(code **)(*piVar13 + 0x60)" * (cast_expression "(code **)(*piVar13 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar13 + 0x60)" ( (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" * identifier) + number_literal) ))))) )) (argument_list "(piVar13,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_220 = CONCAT13(1,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(1,uStack_220._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_220._1_3_)" identifier (argument_list "(1,uStack_220._1_3_)" ( number_literal , (field_expression "uStack_220._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar22,pcVar23)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" else (compound_statement "{\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" { (expression_statement "pcVar21 = (code *)(piVar13[0x3a] + iVar2);" (assignment_expression "pcVar21 = (code *)(piVar13[0x3a] + iVar2)" identifier = (cast_expression "(code *)(piVar13[0x3a] + iVar2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13[0x3a] + iVar2)" ( (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" identifier [ number_literal ]) + identifier) )))) ;) (if_statement "if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;" if (parenthesized_expression "((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)" ( (binary_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14" (cast_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18)" ( (binary_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18" (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3)" ( (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 3" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar13[0x3a]" identifier [ number_literal ])) >> number_literal) )) * (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ))) <= identifier) )) (goto_statement "goto LAB_000eb0e4;" goto statement_identifier ;)) (if_statement "if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }" if (parenthesized_expression "((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2))" ( (binary_expression "(*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)" (parenthesized_expression "(*(int *)pcVar21 != 0)" ( (binary_expression "*(int *)pcVar21 != 0" (pointer_expression "*(int *)pcVar21" * (cast_expression "(int *)pcVar21" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar21 != -2)" ( (binary_expression "*(int *)pcVar21 != -2" (pointer_expression "*(int *)pcVar21" * (cast_expression "(int *)pcVar21" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }" { (expression_statement "iVar11 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" * (cast_expression "(int *)(pcStack_228 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x77f0)" ( (binary_expression "pcStack_228 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);" statement_identifier : (expression_statement "(**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);" (call_expression "(**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_228 + -0x7810)" * (pointer_expression "*(code **)(pcStack_228 + -0x7810)" * (cast_expression "(code **)(pcStack_228 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_228 + -0x7810)" ( (binary_expression "pcStack_228 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524)" ( (binary_expression "*(int *)(pcStack_228 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_228 + -0x7fc4)" * (cast_expression "(int *)(pcStack_228 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_228 + -0x7fc4)" ( (binary_expression "pcStack_228 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar11 + -0x3524" identifier + number_literal) ))) ;)) })) (expression_statement "*(int *)pcVar21 = -2;" (assignment_expression "*(int *)pcVar21 = -2" (pointer_expression "*(int *)pcVar21" * (cast_expression "(int *)pcVar21" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar22,pcVar23)" ( identifier , identifier ))) ;) }))) }) (else_clause "else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }" else (compound_statement "{\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }" { (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" identifier = (binary_expression "uStack_220 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" ( (pointer_expression "*pcVar24" * identifier) )) (argument_list "(pcVar22,pcVar23)" ( identifier , identifier ))) ;) }))) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" identifier = (binary_expression "pcVar20 + 1" identifier + number_literal)) ;) (expression_statement "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" * (cast_expression "(int *)((int)pcVar22 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar22 + 0xc)" ( (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" * (cast_expression "(int *)((int)pcVar22 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar22 + 0xc)" ( (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar15 = pcVar15 + 0x18;" (assignment_expression "pcVar15 = pcVar15 + 0x18" identifier = (binary_expression "pcVar15 + 0x18" identifier + number_literal)) ;) (if_statement "if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }" if (parenthesized_expression "(pcStack_1c4 == pcVar20)" ( (binary_expression "pcStack_1c4 == pcVar20" identifier == identifier) )) (compound_statement "{\n                    return pcStack_1c4;\n                  }" { (return_statement "return pcStack_1c4;" return identifier ;) })) (goto_statement "goto LAB_000eabc8;" goto statement_identifier ;) })) }))) (return_statement "return pcVar4;" return identifier ;) })) (expression_statement "unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);" (assignment_expression "unaff_s2 = *(code **)(pcVar20 + 0x3d8b48)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x3d8b48)" * (cast_expression "(code **)(pcVar20 + 0x3d8b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x3d8b48)" ( (binary_expression "pcVar20 + 0x3d8b48" identifier + number_literal) ))))) ;) (expression_statement "pcVar3 = param_1;" (assignment_expression "pcVar3 = param_1" identifier = identifier) ;) (if_statement "if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }" if (parenthesized_expression "(param_1 != (code *)0x0)" ( (binary_expression "param_1 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }" { (expression_statement "unaff_s5 = (code *)0x0;" (assignment_expression "unaff_s5 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);" (assignment_expression "unaff_s8 = *(code **)(pcVar20 + 0x3d8b10)" identifier = (pointer_expression "*(code **)(pcVar20 + 0x3d8b10)" * (cast_expression "(code **)(pcVar20 + 0x3d8b10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar20 + 0x3d8b10)" ( (binary_expression "pcVar20 + 0x3d8b10" identifier + number_literal) ))))) ;) (expression_statement "unaff_s7 = &uStack_90;" (assignment_expression "unaff_s7 = &uStack_90" identifier = (pointer_expression "&uStack_90" & identifier)) ;) (do_statement "do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);" do (compound_statement "{\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              }" { (while_statement "while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }" while (parenthesized_expression "(uVar17 != 0)" ( (binary_expression "uVar17 != 0" identifier != number_literal) )) (compound_statement "{\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }" { (expression_statement "pcStack_9c = (code *)*puStack_38;" (assignment_expression "pcStack_9c = (code *)*puStack_38" identifier = (cast_expression "(code *)*puStack_38" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puStack_38" * identifier))) ;) (expression_statement "uStack_a0 = 0;" (assignment_expression "uStack_a0 = 0" identifier = number_literal) ;) (expression_statement "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);" (assignment_expression "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x76e0))" ( (pointer_expression "**(code **)(pcStack_98 + -0x76e0)" * (pointer_expression "*(code **)(pcStack_98 + -0x76e0)" * (cast_expression "(code **)(pcStack_98 + -0x76e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x76e0)" ( (binary_expression "pcStack_98 + -0x76e0" identifier + number_literal) ))))) )) (argument_list "(param_4,piVar7,pcVar4 + 0x3e03cc)" ( identifier , identifier , (binary_expression "pcVar4 + 0x3e03cc" identifier + number_literal) )))) ;) (if_statement "if (iVar2 != 0) break;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);" statement_identifier : (expression_statement "uStack_90 = CONCAT13(8,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(8,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(8,uStack_90._1_3_)" identifier (argument_list "(8,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;)) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" ( (pointer_expression "*unaff_s2" * identifier) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" identifier = (binary_expression "unaff_s5 + 1" identifier + number_literal)) ;) (expression_statement "puStack_38 = puStack_38 + 3;" (assignment_expression "puStack_38 = puStack_38 + 3" identifier = (binary_expression "puStack_38 + 3" identifier + number_literal)) ;) (if_statement "if (param_1 == unaff_s5) {\n                    return param_1;\n                  }" if (parenthesized_expression "(param_1 == unaff_s5)" ( (binary_expression "param_1 == unaff_s5" identifier == identifier) )) (compound_statement "{\n                    return param_1;\n                  }" { (return_statement "return param_1;" return identifier ;) })) })) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (expression_statement "pcVar3 = (code *)((uint)puStack_38[1] >> 8);" (assignment_expression "pcVar3 = (code *)((uint)puStack_38[1] >> 8)" identifier = (cast_expression "(code *)((uint)puStack_38[1] >> 8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)puStack_38[1] >> 8)" ( (binary_expression "(uint)puStack_38[1] >> 8" (cast_expression "(uint)puStack_38[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puStack_38[1]" identifier [ number_literal ])) >> number_literal) )))) ;) (if_statement "if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" if (parenthesized_expression "(pcVar3 < pcStack_28)" ( (binary_expression "pcVar3 < pcStack_28" identifier < identifier) )) (compound_statement "{\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" { (expression_statement "pcVar20 = (code *)((int)pcVar3 * 0x10);" (assignment_expression "pcVar20 = (code *)((int)pcVar3 * 0x10)" identifier = (cast_expression "(code *)((int)pcVar3 * 0x10)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pcVar3 * 0x10)" ( (binary_expression "(int)pcVar3 * 0x10" (cast_expression "(int)pcVar3" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }" if (parenthesized_expression "(iStack_24 == 0)" ( (binary_expression "iStack_24 == 0" identifier == number_literal) )) (compound_statement "{\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }" { (expression_statement "(**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);" (call_expression "(**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7810)" * (pointer_expression "*(code **)(pcStack_98 + -0x7810)" * (cast_expression "(code **)(pcStack_98 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7810)" ( (binary_expression "pcStack_98 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080)" ( (binary_expression "*(int *)(pcStack_98 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_98 + -0x7fc4)" * (cast_expression "(int *)(pcStack_98 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x7fc4)" ( (binary_expression "pcStack_98 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_98 + -0x77f0) + -0x5080" (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);" statement_identifier : (expression_statement "iVar2 = *(int *)(pcVar22 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcVar22 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcVar22 + -0x77f0)" * (cast_expression "(int *)(pcVar22 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x77f0)" ( (binary_expression "pcVar22 + -0x77f0" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);" statement_identifier : (expression_statement "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);" (call_expression "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" ( (pointer_expression "**(code **)(pcVar22 + -0x7810)" * (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar2 + -0x5068" identifier + number_literal) ))) ;)) (labeled_statement "LAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);" statement_identifier : (expression_statement "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" ( (pointer_expression "**(code **)(pcVar22 + -0x7810)" * (pointer_expression "*(code **)(pcVar22 + -0x7810)" * (cast_expression "(code **)(pcVar22 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + -0x7810)" ( (binary_expression "pcVar22 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0)" ( (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" * (cast_expression "(int *)(pcVar22 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x7fc4)" ( (binary_expression "pcVar22 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar22 + -0x77f0)" * (cast_expression "(int *)(pcVar22 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + -0x77f0)" ( (binary_expression "pcVar22 + -0x77f0" identifier + number_literal) )))) + number_literal) ))) ;)) (goto_statement "goto LAB_000e95f4;" goto statement_identifier ;) })) (expression_statement "pcVar15 = pcVar20 + iStack_24;" (assignment_expression "pcVar15 = pcVar20 + iStack_24" identifier = (binary_expression "pcVar20 + iStack_24" identifier + identifier)) ;) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe)" identifier = (binary_expression "(uint)*(ushort *)(pcVar15 + 0xe)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(pcVar15 + 0xe)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe)" ( (binary_expression "pcVar15 + 0xe" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }" if (parenthesized_expression "(uVar6 < 0xff00)" ( (binary_expression "uVar6 < 0xff00" identifier < number_literal) )) (compound_statement "{\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }" { (labeled_statement "LAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;" statement_identifier : (if_statement "if (uVar6 == 0) goto LAB_000e910c;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000e910c;" goto statement_identifier ;))) (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e962c;" goto statement_identifier ;)) (if_statement "if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;" if (parenthesized_expression "(*(int *)(piVar7[0xe] + uVar6 * 4) == 0)" ( (binary_expression "*(int *)(piVar7[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" ( (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) )))) == number_literal) )) (goto_statement "goto LAB_000e91a4;" goto statement_identifier ;)) (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" identifier = (subscript_expression "pcVar15[0xc]" identifier [ number_literal ])) ;) }) (else_clause "else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }" else (compound_statement "{\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }" { (if_statement "if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }" if (parenthesized_expression "(uVar6 == 0xffff)" ( (binary_expression "uVar6 == 0xffff" identifier == number_literal) )) (compound_statement "{\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }" { (expression_statement "iVar2 = piVar7[0xc];" (assignment_expression "iVar2 = piVar7[0xc]" identifier = (subscript_expression "piVar7[0xc]" identifier [ number_literal ])) ;) (expression_statement "pcStack_88 = pcVar3;" (assignment_expression "pcStack_88 = pcVar3" identifier = identifier) ;) (expression_statement "pcStack_84 = pcVar20;" (assignment_expression "pcStack_84 = pcVar20" identifier = identifier) ;) (expression_statement "pcStack_80 = pcVar15;" (assignment_expression "pcStack_80 = pcVar15" identifier = identifier) ;) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7)" identifier = (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" ( (pointer_expression "**(code **)(*piVar7 + 0x6c)" * (pointer_expression "*(code **)(*piVar7 + 0x6c)" * (cast_expression "(code **)(*piVar7 + 0x6c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x6c)" ( (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7)" ( identifier )))) ;) (expression_statement "piVar7[0xc] = iVar2;" (assignment_expression "piVar7[0xc] = iVar2" (subscript_expression "piVar7[0xc]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);" (assignment_expression "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88)" identifier = (call_expression "(**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7790))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7790)" * (pointer_expression "*(code **)(pcStack_98 + -0x7790)" * (cast_expression "(code **)(pcStack_98 + -0x7790)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7790)" ( (binary_expression "pcStack_98 + -0x7790" identifier + number_literal) ))))) )) (argument_list "(iVar2,piVar7,pcStack_88)" ( identifier , identifier , identifier )))) ;) (expression_statement "pcVar3 = pcStack_88;" (assignment_expression "pcVar3 = pcStack_88" identifier = identifier) ;) (expression_statement "pcVar20 = pcStack_84;" (assignment_expression "pcVar20 = pcStack_84" identifier = identifier) ;) (expression_statement "pcVar15 = pcStack_80;" (assignment_expression "pcVar15 = pcStack_80" identifier = identifier) ;) (goto_statement "goto LAB_000e92ac;" goto statement_identifier ;) })) (labeled_statement "LAB_000e910c:\n                    cVar1 = pcVar15[0xc];" statement_identifier : (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" identifier = (subscript_expression "pcVar15[0xc]" identifier [ number_literal ])) ;)) }))) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" identifier = identifier) ;) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }" if (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" ( (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" ( (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }" { (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (if_statement "if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }" if (parenthesized_expression "(pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4))" ( (binary_expression "pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" identifier < (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" ( (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" identifier [ number_literal ]) - (subscript_expression "piVar7[0x3a]" identifier [ number_literal ])) >> number_literal) )))) )) (compound_statement "{\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }" { (expression_statement "pcVar20 = pcVar20 + piVar7[0x3a];" (assignment_expression "pcVar20 = pcVar20 + piVar7[0x3a]" identifier = (binary_expression "pcVar20 + piVar7[0x3a]" identifier + (subscript_expression "piVar7[0x3a]" identifier [ number_literal ]))) ;) (if_statement "if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }" if (parenthesized_expression "((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2))" ( (binary_expression "(*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)" (parenthesized_expression "(*(int *)pcVar20 != 0)" ( (binary_expression "*(int *)pcVar20 != 0" (pointer_expression "*(int *)pcVar20" * (cast_expression "(int *)pcVar20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) )) && (parenthesized_expression "(*(int *)pcVar20 != -2)" ( (binary_expression "*(int *)pcVar20 != -2" (pointer_expression "*(int *)pcVar20" * (cast_expression "(int *)pcVar20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) != number_literal) ))) )) (compound_statement "{\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }" { (expression_statement "iVar11 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_98 + -0x77f0)" identifier = (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" * (cast_expression "(int *)(pcStack_98 + -0x77f0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x77f0)" ( (binary_expression "pcStack_98 + -0x77f0" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);" statement_identifier : (expression_statement "pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);" (assignment_expression "pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" identifier = (cast_expression "(code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" ( (binary_expression "*(int *)(pcStack_98 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_98 + -0x7fc4)" * (cast_expression "(int *)(pcStack_98 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_98 + -0x7fc4)" ( (binary_expression "pcStack_98 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;)) (expression_statement "(**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);" (call_expression "(**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7810))" ( (pointer_expression "**(code **)(pcStack_98 + -0x7810)" * (pointer_expression "*(code **)(pcStack_98 + -0x7810)" * (cast_expression "(code **)(pcStack_98 + -0x7810)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_98 + -0x7810)" ( (binary_expression "pcStack_98 + -0x7810" identifier + number_literal) ))))) )) (argument_list "(pcVar20,0x71f,iVar11 + -0x48c0)" ( identifier , number_literal , (binary_expression "iVar11 + -0x48c0" identifier + number_literal) ))) ;) })) (expression_statement "*(int *)pcVar20 = -2;" (assignment_expression "*(int *)pcVar20 = -2" (pointer_expression "*(int *)pcVar20" * (cast_expression "(int *)pcVar20" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" ( (pointer_expression "*unaff_s2" * identifier) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) (goto_statement "goto LAB_000e90a8;" goto statement_identifier ;) })) (goto_statement "goto LAB_000e95c0;" goto statement_identifier ;) })) (if_statement "if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" if (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == unaff_s8)" ( (binary_expression "*(code **)(*piVar7 + 0x60) == unaff_s8" (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) )))) == identifier) )) (compound_statement "{\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" { (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;" if (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" ( (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" ( (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" identifier [ number_literal ]) - (subscript_expression "piVar7[0xe]" identifier [ number_literal ])) >> number_literal) ))) <= identifier) )) (goto_statement "goto LAB_000e95d8;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4)" identifier = (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" * (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" ( (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" identifier [ number_literal ]) + (binary_expression "uVar6 * 4" identifier * number_literal)) ))))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }) (else_clause "else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" else (compound_statement "{\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" { (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" identifier = (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" ( (pointer_expression "**(code **)(*piVar7 + 0x60)" * (pointer_expression "*(code **)(*piVar7 + 0x60)" * (cast_expression "(code **)(*piVar7 + 0x60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*piVar7 + 0x60)" ( (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) )) (argument_list "(piVar7,uVar6)" ( identifier , identifier )))) ;) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" identifier = (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) ))))) ;) }))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" * (cast_expression "(uint *)(iVar2 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x98)" ( (binary_expression "iVar2 + 0x98" identifier + number_literal) )))) = (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" identifier & number_literal) | number_literal)) ;) (expression_statement "uStack_90 = CONCAT13(1,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(1,uStack_90._1_3_)" identifier = (call_expression "CONCAT13(1,uStack_90._1_3_)" identifier (argument_list "(1,uStack_90._1_3_)" ( number_literal , (field_expression "uStack_90._1_3_" identifier . field_identifier) )))) ;) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" ( (pointer_expression "*unaff_s2" * identifier) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) }) (else_clause "else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" else (compound_statement "{\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" { (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" identifier = (binary_expression "uStack_90 & 0xffffff" identifier & number_literal)) ;) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" ( (pointer_expression "*unaff_s2" * identifier) )) (argument_list "(iStack_20,unaff_s7)" ( identifier , identifier ))) ;) }))) (labeled_statement "LAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;" statement_identifier : (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" identifier = (binary_expression "unaff_s5 + 1" identifier + number_literal)) ;)) (expression_statement "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;" (assignment_expression "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) = (binary_expression "*(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" * (cast_expression "(int *)(iStack_20 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_20 + 0xc)" ( (binary_expression "iStack_20 + 0xc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puStack_38 = puStack_38 + 3;" (assignment_expression "puStack_38 = puStack_38 + 3" identifier = (binary_expression "puStack_38 + 3" identifier + number_literal)) ;) (expression_statement "pcVar3 = param_1;" (assignment_expression "pcVar3 = param_1" identifier = identifier) ;) }) while (parenthesized_expression "(param_1 != unaff_s5)" ( (binary_expression "param_1 != unaff_s5" identifier != identifier) )) ;) })) }))) (return_statement "return pcVar3;" return identifier ;) })) (if_statement "if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }" if (parenthesized_expression "(((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c)))" ( (binary_expression "((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))" (parenthesized_expression "((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0))" ( (binary_expression "(*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)" (parenthesized_expression "(*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0')" ( (binary_expression "*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0'" (pointer_expression "*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9)" * (cast_expression "(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9)" ( (binary_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9" (pointer_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" * (cast_expression "(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(pcVar4 + 0x3d8b40) + 8)" ( (binary_expression "**(int **)(pcVar4 + 0x3d8b40) + 8" (pointer_expression "**(int **)(pcVar4 + 0x3d8b40)" * (pointer_expression "*(int **)(pcVar4 + 0x3d8b40)" * (cast_expression "(int **)(pcVar4 + 0x3d8b40)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar4 + 0x3d8b40)" ( (binary_expression "pcVar4 + 0x3d8b40" identifier + number_literal) ))))) + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)" ( (binary_expression "(*(uint *)(puVar8 + 0x28) & 0xe000) != 0" (parenthesized_expression "(*(uint *)(puVar8 + 0x28) & 0xe000)" ( (binary_expression "*(uint *)(puVar8 + 0x28) & 0xe000" (pointer_expression "*(uint *)(puVar8 + 0x28)" * (cast_expression "(uint *)(puVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x28)" ( (binary_expression "puVar8 + 0x28" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) || (parenthesized_expression "(-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))" ( (binary_expression "-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c)" number_literal < (pointer_expression "*(int *)(*(int *)(puVar8 + 8) + 0x2c)" * (cast_expression "(int *)(*(int *)(puVar8 + 8) + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar8 + 8) + 0x2c)" ( (binary_expression "*(int *)(puVar8 + 8) + 0x2c" (pointer_expression "*(int *)(puVar8 + 8)" * (cast_expression "(int *)(puVar8 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 8)" ( (binary_expression "puVar8 + 8" identifier + number_literal) )))) + number_literal) ))))) ))) )) (compound_statement "{\n          iVar2 = piVar5[5];\n        }" { (expression_statement "iVar2 = piVar5[5];" (assignment_expression "iVar2 = piVar5[5]" identifier = (subscript_expression "piVar5[5]" identifier [ number_literal ])) ;) }) (else_clause "else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }" else (compound_statement "{\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }" { (if_statement "if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }" if (parenthesized_expression "((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000)" ( (binary_expression "(*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000" (parenthesized_expression "(*(uint *)(puVar8 + 0x28) & 0x70000000)" ( (binary_expression "*(uint *)(puVar8 + 0x28) & 0x70000000" (pointer_expression "*(uint *)(puVar8 + 0x28)" * (cast_expression "(uint *)(puVar8 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x28)" ( (binary_expression "puVar8 + 0x28" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n            return (code *)0x1;\n          }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "iVar2 = piVar5[5];" (assignment_expression "iVar2 = piVar5[5]" identifier = (subscript_expression "piVar5[5]" identifier [ number_literal ])) ;) }))) (if_statement "if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }" { (expression_statement "piVar5 = (int *)(puVar8 + 0x1c);" (assignment_expression "piVar5 = (int *)(puVar8 + 0x1c)" identifier = (cast_expression "(int *)(puVar8 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x1c)" ( (binary_expression "puVar8 + 0x1c" identifier + number_literal) )))) ;) }) (else_clause "else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }" else (compound_statement "{\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }" { (expression_statement "piVar5 = (int *)(puVar8 + 0x1c);" (assignment_expression "piVar5 = (int *)(puVar8 + 0x1c)" identifier = (cast_expression "(int *)(puVar8 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x1c)" ( (binary_expression "puVar8 + 0x1c" identifier + number_literal) )))) ;) (if_statement "if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }" if (parenthesized_expression "(*(int *)(iVar2 + 0x8c) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x8c) != 0" (pointer_expression "*(int *)(iVar2 + 0x8c)" * (cast_expression "(int *)(iVar2 + 0x8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x8c)" ( (binary_expression "iVar2 + 0x8c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }" { (expression_statement "iVar2 = *(int *)(puVar8 + 0x50);" (assignment_expression "iVar2 = *(int *)(puVar8 + 0x50)" identifier = (pointer_expression "*(int *)(puVar8 + 0x50)" * (cast_expression "(int *)(puVar8 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x50)" ( (binary_expression "puVar8 + 0x50" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }" statement_identifier : (if_statement "if (iVar2 == -1) {\n              return (code *)0x1;\n            }" if (parenthesized_expression "(iVar2 == -1)" ( (binary_expression "iVar2 == -1" identifier == number_literal) )) (compound_statement "{\n              return (code *)0x1;\n            }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) }))) (expression_statement "pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);" (assignment_expression "pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" identifier = (cast_expression "(code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" identifier (argument_list "(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" ( identifier , (binary_expression "*(int *)(puVar8 + 0x14) != 0" (pointer_expression "*(int *)(puVar8 + 0x14)" * (cast_expression "(int *)(puVar8 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + 0x14)" ( (binary_expression "puVar8 + 0x14" identifier + number_literal) )))) != number_literal) , number_literal ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) }))) (do_statement "do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);" do (compound_statement "{\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        }" { (if_statement "if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }" if (parenthesized_expression "(*piVar5 == 0)" ( (binary_expression "*piVar5 == 0" (pointer_expression "*piVar5" * identifier) == number_literal) )) (compound_statement "{\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }" { (expression_statement "iVar2 = piVar5[1];" (assignment_expression "iVar2 = piVar5[1]" identifier = (subscript_expression "piVar5[1]" identifier [ number_literal ])) ;) (goto_statement "goto LAB_000e8f24;" goto statement_identifier ;) })) (expression_statement "piVar5 = (int *)piVar5[2];" (assignment_expression "piVar5 = (int *)piVar5[2]" identifier = (cast_expression "(int *)piVar5[2]" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar5[2]" identifier [ number_literal ]))) ;) }) while (parenthesized_expression "(piVar5 != (int *)0x0)" ( (binary_expression "piVar5 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) })) (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (if_statement "if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }" if (parenthesized_expression "(((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c)))" ( (binary_expression "((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))" (parenthesized_expression "((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0))" ( (binary_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)" (parenthesized_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0')" ( (binary_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0'" (pointer_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" * (cast_expression "(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "((*(uint *)(param_1 + 0x28) & 0xe000) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0x28) & 0xe000) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x28) & 0xe000)" ( (binary_expression "*(uint *)(param_1 + 0x28) & 0xe000" (pointer_expression "*(uint *)(param_1 + 0x28)" * (cast_expression "(uint *)(param_1 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) || (parenthesized_expression "(-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))" ( (binary_expression "-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c)" number_literal < (pointer_expression "*(int *)(*(int *)(param_1 + 8) + 0x2c)" * (cast_expression "(int *)(*(int *)(param_1 + 8) + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 8) + 0x2c)" ( (binary_expression "*(int *)(param_1 + 8) + 0x2c" (pointer_expression "*(int *)(param_1 + 8)" * (cast_expression "(int *)(param_1 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) + number_literal) ))))) ))) )) (compound_statement "{\n      iVar2 = param_4[5];\n    }" { (expression_statement "iVar2 = param_4[5];" (assignment_expression "iVar2 = param_4[5]" identifier = (subscript_expression "param_4[5]" identifier [ number_literal ])) ;) }) (else_clause "else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }" else (compound_statement "{\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }" { (if_statement "if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }" if (parenthesized_expression "((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000)" ( (binary_expression "(*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000" (parenthesized_expression "(*(uint *)(param_1 + 0x28) & 0x70000000)" ( (binary_expression "*(uint *)(param_1 + 0x28) & 0x70000000" (pointer_expression "*(uint *)(param_1 + 0x28)" * (cast_expression "(uint *)(param_1 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n        return (code *)0x1;\n      }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })) (expression_statement "iVar2 = param_4[5];" (assignment_expression "iVar2 = param_4[5]" identifier = (subscript_expression "param_4[5]" identifier [ number_literal ])) ;) }))) (if_statement "if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      pcVar3 = param_1 + 0x1c;\n    }" { (expression_statement "pcVar3 = param_1 + 0x1c;" (assignment_expression "pcVar3 = param_1 + 0x1c" identifier = (binary_expression "param_1 + 0x1c" identifier + number_literal)) ;) }) (else_clause "else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }" else (compound_statement "{\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }" { (expression_statement "pcVar3 = param_1 + 0x1c;" (assignment_expression "pcVar3 = param_1 + 0x1c" identifier = (binary_expression "param_1 + 0x1c" identifier + number_literal)) ;) (if_statement "if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }" if (parenthesized_expression "(*(int *)(iVar2 + 0x8c) != 0)" ( (binary_expression "*(int *)(iVar2 + 0x8c) != 0" (pointer_expression "*(int *)(iVar2 + 0x8c)" * (cast_expression "(int *)(iVar2 + 0x8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x8c)" ( (binary_expression "iVar2 + 0x8c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }" { (expression_statement "iVar2 = *(int *)(param_1 + 0x50);" (assignment_expression "iVar2 = *(int *)(param_1 + 0x50)" identifier = (pointer_expression "*(int *)(param_1 + 0x50)" * (cast_expression "(int *)(param_1 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }" statement_identifier : (if_statement "if (iVar2 == -1) {\n          return (code *)0x1;\n        }" if (parenthesized_expression "(iVar2 == -1)" ( (binary_expression "iVar2 == -1" identifier == number_literal) )) (compound_statement "{\n          return (code *)0x1;\n        }" { (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) }))) (expression_statement "pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);" (assignment_expression "pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0)" identifier = (cast_expression "(code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0)" identifier (argument_list "(param_1,*(int *)(param_1 + 0x14) != 0,0)" ( identifier , (binary_expression "*(int *)(param_1 + 0x14) != 0" (pointer_expression "*(int *)(param_1 + 0x14)" * (cast_expression "(int *)(param_1 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) != number_literal) , number_literal ))))) ;) (return_statement "return pcVar4;" return identifier ;) })) }))) (do_statement "do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);" do (compound_statement "{\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    }" { (if_statement "if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }" if (parenthesized_expression "(*(int *)pcVar3 == 0)" ( (binary_expression "*(int *)pcVar3 == 0" (pointer_expression "*(int *)pcVar3" * (cast_expression "(int *)pcVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }" { (expression_statement "iVar2 = *(int *)(pcVar3 + 4);" (assignment_expression "iVar2 = *(int *)(pcVar3 + 4)" identifier = (pointer_expression "*(int *)(pcVar3 + 4)" * (cast_expression "(int *)(pcVar3 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 4)" ( (binary_expression "pcVar3 + 4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000e8d84;" goto statement_identifier ;) })) (expression_statement "pcVar3 = *(code **)(pcVar3 + 8);" (assignment_expression "pcVar3 = *(code **)(pcVar3 + 8)" identifier = (pointer_expression "*(code **)(pcVar3 + 8)" * (cast_expression "(code **)(pcVar3 + 8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 8)" ( (binary_expression "pcVar3 + 8" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(pcVar3 != (code *)0x0)" ( (binary_expression "pcVar3 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) })) (expression_statement "PTR_do_gold_unreachable_004c1a30 = pcVar4;" (assignment_expression "PTR_do_gold_unreachable_004c1a30 = pcVar4" identifier = identifier) ;) (return_statement "return (code *)0x1;" return (cast_expression "(code *)0x1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) )))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * 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 IDENT ;) (declaration TYPE 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 (pointer_declarator * 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * 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 (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * 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 IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE 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 (pointer_declarator * 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 (pointer_declarator * 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 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE 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 (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 (pointer_declarator * 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 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration 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 IDENT + LIT) )))) & LIT) )) == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ (binary_expression IDENT + LIT) ]))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (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 IDENT + LIT) )))) & LIT) )) == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < 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 IDENT + LIT) ))))) )) (argument_list ( )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) }))) (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 (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (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)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) )))) ;) (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 IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (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 IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 + (subscript_expression IDENT [ LIT ])) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT != LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (subscript_expression IDENT [ LIT ])) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression 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 (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_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 = (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( IDENT ))) * (cast_expression ( (type_descriptor TYPE (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 { (labeled_statement statement_identifier : (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 = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_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 { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 , (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (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 (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) && (binary_expression IDENT == LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = 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 = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (parenthesized_expression ( (binary_expression IDENT + (subscript_expression IDENT [ IDENT ])) ))) )) (argument_list ( ))))) ;) (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) )) (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) ))))) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) )) (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 { (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (labeled_statement statement_identifier : (while_statement while (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (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 IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (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 IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) && (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT - LIT) ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;)) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;)) (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) ))))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT - LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (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)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (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) ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT)) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_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) | (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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (labeled_statement statement_identifier : (while_statement while (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (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 IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT)) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_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) | (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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT - LIT) ))) ;)) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;)) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT - LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) 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 = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_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 = (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (do_statement do (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 : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (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) )))) & LIT) )) << LIT) | (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) )))) )))) ;) (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 IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_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 { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 , (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (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 (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) && (binary_expression IDENT == LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = 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 = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (parenthesized_expression ( (binary_expression IDENT + (subscript_expression IDENT [ IDENT ])) ))) )) (argument_list ( ))))) ;) (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) )) (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) ))))) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) )) (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 { (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (labeled_statement statement_identifier : (while_statement while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (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 IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) << LIT)) )) >> LIT) )) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT)) )) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) 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 IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_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) | (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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) && (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (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) ))))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (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 < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (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 = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (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 IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) )) * LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT != LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression 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 (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_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 = (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (comma_expression (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) , (binary_expression IDENT != 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 < IDENT) )) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + 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 (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) )) * LIT) )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (goto_statement goto statement_identifier ;) })) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (parenthesized_expression ( (binary_expression (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + (binary_expression IDENT * LIT)) ))))) + LIT) ))) )) (argument_list ( ))))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) | LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) )) (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) ))))) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 = IDENT) ;) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT != (char_literal ' escape_sequence ')) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) , (binary_expression IDENT == LIT)) ))) )) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (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 IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) })) (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 < IDENT) )) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))))) ;)) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;)) (return_statement return IDENT ;) })) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) )) * LIT) ))) <= IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;)) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))))) ;)) (return_statement return IDENT ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) }))) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (labeled_statement statement_identifier : (while_statement while (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (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 IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (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 IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) )) * (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;)) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) }))) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (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 IDENT == IDENT) )) (compound_statement { (return_statement return IDENT ;) })) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (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) ))))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (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 IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (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 (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (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 < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_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 *)) ) IDENT)) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , (binary_expression IDENT + LIT) ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) (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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) ))) <= IDENT) )) (goto_statement goto statement_identifier ;)) (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 IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT & LIT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) }))) (return_statement return 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) )))) + LIT) )))) == (char_literal ' escape_sequence ')) )) || (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) ))) )) || (parenthesized_expression ( (binary_expression LIT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (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 IDENT + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (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) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (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 ))))) ;) (return_statement return IDENT ;) })) }))) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) ;) })) (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT) )))) + LIT) )))) == (char_literal ' escape_sequence ')) )) || (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) ))) )) || (parenthesized_expression ( (binary_expression LIT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (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 IDENT + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (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 { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (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 ))))) ;) (return_statement return IDENT ;) })) }))) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ;) })))
(function_definition "code * FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)\n\n{\n  code cVar1;\n  int iVar2;\n  code *pcVar3;\n  code *pcVar4;\n  int *piVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  uint uVar10;\n  int iVar11;\n  int iVar12;\n  int *piVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  code *unaff_s2;\n  code *unaff_s5;\n  uint uVar17;\n  uint *puVar18;\n  uint *unaff_s7;\n  uint *puVar19;\n  code *pcVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *unaff_s8;\n  code *pcVar23;\n  code *pcVar24;\n  code *pcVar25;\n  code *pcVar26;\n  undefined1 auStack_288 [8];\n  code *pcStack_280;\n  code *pcStack_27c;\n  uint uStack_278;\n  code *pcStack_274;\n  int iStack_270;\n  uint uStack_268;\n  code *pcStack_264;\n  code *pcStack_260;\n  code *pcStack_25c;\n  int *piStack_258;\n  code *pcStack_254;\n  uint *puStack_250;\n  uint uStack_24c;\n  code *pcStack_248;\n  code *pcStack_244;\n  undefined4 uStack_230;\n  code *pcStack_22c;\n  code *pcStack_228;\n  code *pcStack_224;\n  uint uStack_220;\n  char cStack_219;\n  code *pcStack_218;\n  code *pcStack_214;\n  code *pcStack_210;\n  int iStack_20c;\n  code *pcStack_208;\n  code *pcStack_204;\n  code *pcStack_200;\n  code *pcStack_1fc;\n  int *piStack_1f8;\n  code *pcStack_1f4;\n  uint *puStack_1f0;\n  uint *puStack_1ec;\n  code *pcStack_1e8;\n  code *pcStack_1e4;\n  undefined4 uStack_1d0;\n  int iStack_1cc;\n  code *pcStack_1c8;\n  code *pcStack_1c4;\n  uint uStack_1c0;\n  byte bStack_1b9;\n  code *pcStack_1b8;\n  code *pcStack_1b4;\n  code *pcStack_1b0;\n  int iStack_1ac;\n  code *pcStack_1a8;\n  uint uStack_1a0;\n  code *pcStack_19c;\n  code *pcStack_198;\n  code *pcStack_194;\n  int *piStack_190;\n  code *pcStack_18c;\n  uint uStack_188;\n  uint *puStack_184;\n  code *pcStack_180;\n  code *pcStack_17c;\n  undefined4 uStack_168;\n  code *pcStack_164;\n  code *pcStack_160;\n  code *pcStack_15c;\n  uint uStack_158;\n  byte bStack_151;\n  code *pcStack_150;\n  code *pcStack_14c;\n  code *pcStack_148;\n  code *pcStack_144;\n  code *pcStack_140;\n  code *pcStack_13c;\n  code *pcStack_138;\n  code *pcStack_134;\n  int *piStack_130;\n  code *pcStack_12c;\n  uint uStack_128;\n  uint *puStack_124;\n  code *pcStack_120;\n  code *pcStack_11c;\n  undefined4 uStack_108;\n  int iStack_104;\n  code *pcStack_100;\n  code *pcStack_fc;\n  uint uStack_f8;\n  byte bStack_f1;\n  code *pcStack_f0;\n  code *pcStack_ec;\n  code *pcStack_e8;\n  int iStack_e4;\n  code *pcStack_e0;\n  undefined4 *puStack_d4;\n  code *pcStack_d0;\n  int *piStack_c8;\n  code *pcStack_c4;\n  uint uStack_c0;\n  uint *puStack_bc;\n  code *pcStack_b8;\n  code *pcStack_b4;\n  undefined4 uStack_a0;\n  code *pcStack_9c;\n  code *pcStack_98;\n  code *pcStack_94;\n  uint uStack_90;\n  byte bStack_89;\n  code *pcStack_88;\n  code *pcStack_84;\n  code *pcStack_80;\n  code *pcStack_7c;\n  undefined *puStack_78;\n  int *piStack_74;\n  int iStack_3c;\n  undefined4 *puStack_38;\n  code *pcStack_28;\n  int iStack_24;\n  int iStack_20;\n  \n  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }\n  piVar5 = param_4;\n  if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }\n  PTR_do_gold_unreachable_004c1a30 = pcVar4;\n  return (code *)0x1;\n}" (type_identifier "code") (pointer_declarator "* FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)" (* "*") (function_declarator "FUN_000e8cd4(code *param_1,int param_2,int param_3,int *param_4)" (identifier "FUN_000e8cd4") (parameter_list "(code *param_1,int param_2,int param_3,int *param_4)" (( "(") (parameter_declaration "code *param_1" (type_identifier "code") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) (, ",") (parameter_declaration "int param_3" (primitive_type "int") (identifier "param_3")) (, ",") (parameter_declaration "int *param_4" (primitive_type "int") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) () ")")))) (compound_statement "{\n  code cVar1;\n  int iVar2;\n  code *pcVar3;\n  code *pcVar4;\n  int *piVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  uint uVar10;\n  int iVar11;\n  int iVar12;\n  int *piVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  code *unaff_s2;\n  code *unaff_s5;\n  uint uVar17;\n  uint *puVar18;\n  uint *unaff_s7;\n  uint *puVar19;\n  code *pcVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *unaff_s8;\n  code *pcVar23;\n  code *pcVar24;\n  code *pcVar25;\n  code *pcVar26;\n  undefined1 auStack_288 [8];\n  code *pcStack_280;\n  code *pcStack_27c;\n  uint uStack_278;\n  code *pcStack_274;\n  int iStack_270;\n  uint uStack_268;\n  code *pcStack_264;\n  code *pcStack_260;\n  code *pcStack_25c;\n  int *piStack_258;\n  code *pcStack_254;\n  uint *puStack_250;\n  uint uStack_24c;\n  code *pcStack_248;\n  code *pcStack_244;\n  undefined4 uStack_230;\n  code *pcStack_22c;\n  code *pcStack_228;\n  code *pcStack_224;\n  uint uStack_220;\n  char cStack_219;\n  code *pcStack_218;\n  code *pcStack_214;\n  code *pcStack_210;\n  int iStack_20c;\n  code *pcStack_208;\n  code *pcStack_204;\n  code *pcStack_200;\n  code *pcStack_1fc;\n  int *piStack_1f8;\n  code *pcStack_1f4;\n  uint *puStack_1f0;\n  uint *puStack_1ec;\n  code *pcStack_1e8;\n  code *pcStack_1e4;\n  undefined4 uStack_1d0;\n  int iStack_1cc;\n  code *pcStack_1c8;\n  code *pcStack_1c4;\n  uint uStack_1c0;\n  byte bStack_1b9;\n  code *pcStack_1b8;\n  code *pcStack_1b4;\n  code *pcStack_1b0;\n  int iStack_1ac;\n  code *pcStack_1a8;\n  uint uStack_1a0;\n  code *pcStack_19c;\n  code *pcStack_198;\n  code *pcStack_194;\n  int *piStack_190;\n  code *pcStack_18c;\n  uint uStack_188;\n  uint *puStack_184;\n  code *pcStack_180;\n  code *pcStack_17c;\n  undefined4 uStack_168;\n  code *pcStack_164;\n  code *pcStack_160;\n  code *pcStack_15c;\n  uint uStack_158;\n  byte bStack_151;\n  code *pcStack_150;\n  code *pcStack_14c;\n  code *pcStack_148;\n  code *pcStack_144;\n  code *pcStack_140;\n  code *pcStack_13c;\n  code *pcStack_138;\n  code *pcStack_134;\n  int *piStack_130;\n  code *pcStack_12c;\n  uint uStack_128;\n  uint *puStack_124;\n  code *pcStack_120;\n  code *pcStack_11c;\n  undefined4 uStack_108;\n  int iStack_104;\n  code *pcStack_100;\n  code *pcStack_fc;\n  uint uStack_f8;\n  byte bStack_f1;\n  code *pcStack_f0;\n  code *pcStack_ec;\n  code *pcStack_e8;\n  int iStack_e4;\n  code *pcStack_e0;\n  undefined4 *puStack_d4;\n  code *pcStack_d0;\n  int *piStack_c8;\n  code *pcStack_c4;\n  uint uStack_c0;\n  uint *puStack_bc;\n  code *pcStack_b8;\n  code *pcStack_b4;\n  undefined4 uStack_a0;\n  code *pcStack_9c;\n  code *pcStack_98;\n  code *pcStack_94;\n  uint uStack_90;\n  byte bStack_89;\n  code *pcStack_88;\n  code *pcStack_84;\n  code *pcStack_80;\n  code *pcStack_7c;\n  undefined *puStack_78;\n  int *piStack_74;\n  int iStack_3c;\n  undefined4 *puStack_38;\n  code *pcStack_28;\n  int iStack_24;\n  int iStack_20;\n  \n  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }\n  piVar5 = param_4;\n  if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }\n  PTR_do_gold_unreachable_004c1a30 = pcVar4;\n  return (code *)0x1;\n}" ({ "{") (declaration "code cVar1;" (type_identifier "code") (identifier "cVar1") (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "code *pcVar3;" (type_identifier "code") (pointer_declarator "*pcVar3" (* "*") (identifier "pcVar3")) (; ";")) (declaration "code *pcVar4;" (type_identifier "code") (pointer_declarator "*pcVar4" (* "*") (identifier "pcVar4")) (; ";")) (declaration "int *piVar5;" (primitive_type "int") (pointer_declarator "*piVar5" (* "*") (identifier "piVar5")) (; ";")) (declaration "uint uVar6;" (type_identifier "uint") (identifier "uVar6") (; ";")) (declaration "int *piVar7;" (primitive_type "int") (pointer_declarator "*piVar7" (* "*") (identifier "piVar7")) (; ";")) (declaration "undefined *puVar8;" (type_identifier "undefined") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "undefined *puVar9;" (type_identifier "undefined") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "int iVar11;" (primitive_type "int") (identifier "iVar11") (; ";")) (declaration "int iVar12;" (primitive_type "int") (identifier "iVar12") (; ";")) (declaration "int *piVar13;" (primitive_type "int") (pointer_declarator "*piVar13" (* "*") (identifier "piVar13")) (; ";")) (declaration "code *pcVar14;" (type_identifier "code") (pointer_declarator "*pcVar14" (* "*") (identifier "pcVar14")) (; ";")) (declaration "code *pcVar15;" (type_identifier "code") (pointer_declarator "*pcVar15" (* "*") (identifier "pcVar15")) (; ";")) (declaration "code *pcVar16;" (type_identifier "code") (pointer_declarator "*pcVar16" (* "*") (identifier "pcVar16")) (; ";")) (declaration "code *unaff_s2;" (type_identifier "code") (pointer_declarator "*unaff_s2" (* "*") (identifier "unaff_s2")) (; ";")) (declaration "code *unaff_s5;" (type_identifier "code") (pointer_declarator "*unaff_s5" (* "*") (identifier "unaff_s5")) (; ";")) (declaration "uint uVar17;" (type_identifier "uint") (identifier "uVar17") (; ";")) (declaration "uint *puVar18;" (type_identifier "uint") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "uint *unaff_s7;" (type_identifier "uint") (pointer_declarator "*unaff_s7" (* "*") (identifier "unaff_s7")) (; ";")) (declaration "uint *puVar19;" (type_identifier "uint") (pointer_declarator "*puVar19" (* "*") (identifier "puVar19")) (; ";")) (declaration "code *pcVar20;" (type_identifier "code") (pointer_declarator "*pcVar20" (* "*") (identifier "pcVar20")) (; ";")) (declaration "code *pcVar21;" (type_identifier "code") (pointer_declarator "*pcVar21" (* "*") (identifier "pcVar21")) (; ";")) (declaration "code *pcVar22;" (type_identifier "code") (pointer_declarator "*pcVar22" (* "*") (identifier "pcVar22")) (; ";")) (declaration "code *unaff_s8;" (type_identifier "code") (pointer_declarator "*unaff_s8" (* "*") (identifier "unaff_s8")) (; ";")) (declaration "code *pcVar23;" (type_identifier "code") (pointer_declarator "*pcVar23" (* "*") (identifier "pcVar23")) (; ";")) (declaration "code *pcVar24;" (type_identifier "code") (pointer_declarator "*pcVar24" (* "*") (identifier "pcVar24")) (; ";")) (declaration "code *pcVar25;" (type_identifier "code") (pointer_declarator "*pcVar25" (* "*") (identifier "pcVar25")) (; ";")) (declaration "code *pcVar26;" (type_identifier "code") (pointer_declarator "*pcVar26" (* "*") (identifier "pcVar26")) (; ";")) (declaration "undefined1 auStack_288 [8];" (type_identifier "undefined1") (array_declarator "auStack_288 [8]" (identifier "auStack_288") ([ "[") (number_literal "8") (] "]")) (; ";")) (declaration "code *pcStack_280;" (type_identifier "code") (pointer_declarator "*pcStack_280" (* "*") (identifier "pcStack_280")) (; ";")) (declaration "code *pcStack_27c;" (type_identifier "code") (pointer_declarator "*pcStack_27c" (* "*") (identifier "pcStack_27c")) (; ";")) (declaration "uint uStack_278;" (type_identifier "uint") (identifier "uStack_278") (; ";")) (declaration "code *pcStack_274;" (type_identifier "code") (pointer_declarator "*pcStack_274" (* "*") (identifier "pcStack_274")) (; ";")) (declaration "int iStack_270;" (primitive_type "int") (identifier "iStack_270") (; ";")) (declaration "uint uStack_268;" (type_identifier "uint") (identifier "uStack_268") (; ";")) (declaration "code *pcStack_264;" (type_identifier "code") (pointer_declarator "*pcStack_264" (* "*") (identifier "pcStack_264")) (; ";")) (declaration "code *pcStack_260;" (type_identifier "code") (pointer_declarator "*pcStack_260" (* "*") (identifier "pcStack_260")) (; ";")) (declaration "code *pcStack_25c;" (type_identifier "code") (pointer_declarator "*pcStack_25c" (* "*") (identifier "pcStack_25c")) (; ";")) (declaration "int *piStack_258;" (primitive_type "int") (pointer_declarator "*piStack_258" (* "*") (identifier "piStack_258")) (; ";")) (declaration "code *pcStack_254;" (type_identifier "code") (pointer_declarator "*pcStack_254" (* "*") (identifier "pcStack_254")) (; ";")) (declaration "uint *puStack_250;" (type_identifier "uint") (pointer_declarator "*puStack_250" (* "*") (identifier "puStack_250")) (; ";")) (declaration "uint uStack_24c;" (type_identifier "uint") (identifier "uStack_24c") (; ";")) (declaration "code *pcStack_248;" (type_identifier "code") (pointer_declarator "*pcStack_248" (* "*") (identifier "pcStack_248")) (; ";")) (declaration "code *pcStack_244;" (type_identifier "code") (pointer_declarator "*pcStack_244" (* "*") (identifier "pcStack_244")) (; ";")) (declaration "undefined4 uStack_230;" (type_identifier "undefined4") (identifier "uStack_230") (; ";")) (declaration "code *pcStack_22c;" (type_identifier "code") (pointer_declarator "*pcStack_22c" (* "*") (identifier "pcStack_22c")) (; ";")) (declaration "code *pcStack_228;" (type_identifier "code") (pointer_declarator "*pcStack_228" (* "*") (identifier "pcStack_228")) (; ";")) (declaration "code *pcStack_224;" (type_identifier "code") (pointer_declarator "*pcStack_224" (* "*") (identifier "pcStack_224")) (; ";")) (declaration "uint uStack_220;" (type_identifier "uint") (identifier "uStack_220") (; ";")) (declaration "char cStack_219;" (primitive_type "char") (identifier "cStack_219") (; ";")) (declaration "code *pcStack_218;" (type_identifier "code") (pointer_declarator "*pcStack_218" (* "*") (identifier "pcStack_218")) (; ";")) (declaration "code *pcStack_214;" (type_identifier "code") (pointer_declarator "*pcStack_214" (* "*") (identifier "pcStack_214")) (; ";")) (declaration "code *pcStack_210;" (type_identifier "code") (pointer_declarator "*pcStack_210" (* "*") (identifier "pcStack_210")) (; ";")) (declaration "int iStack_20c;" (primitive_type "int") (identifier "iStack_20c") (; ";")) (declaration "code *pcStack_208;" (type_identifier "code") (pointer_declarator "*pcStack_208" (* "*") (identifier "pcStack_208")) (; ";")) (declaration "code *pcStack_204;" (type_identifier "code") (pointer_declarator "*pcStack_204" (* "*") (identifier "pcStack_204")) (; ";")) (declaration "code *pcStack_200;" (type_identifier "code") (pointer_declarator "*pcStack_200" (* "*") (identifier "pcStack_200")) (; ";")) (declaration "code *pcStack_1fc;" (type_identifier "code") (pointer_declarator "*pcStack_1fc" (* "*") (identifier "pcStack_1fc")) (; ";")) (declaration "int *piStack_1f8;" (primitive_type "int") (pointer_declarator "*piStack_1f8" (* "*") (identifier "piStack_1f8")) (; ";")) (declaration "code *pcStack_1f4;" (type_identifier "code") (pointer_declarator "*pcStack_1f4" (* "*") (identifier "pcStack_1f4")) (; ";")) (declaration "uint *puStack_1f0;" (type_identifier "uint") (pointer_declarator "*puStack_1f0" (* "*") (identifier "puStack_1f0")) (; ";")) (declaration "uint *puStack_1ec;" (type_identifier "uint") (pointer_declarator "*puStack_1ec" (* "*") (identifier "puStack_1ec")) (; ";")) (declaration "code *pcStack_1e8;" (type_identifier "code") (pointer_declarator "*pcStack_1e8" (* "*") (identifier "pcStack_1e8")) (; ";")) (declaration "code *pcStack_1e4;" (type_identifier "code") (pointer_declarator "*pcStack_1e4" (* "*") (identifier "pcStack_1e4")) (; ";")) (declaration "undefined4 uStack_1d0;" (type_identifier "undefined4") (identifier "uStack_1d0") (; ";")) (declaration "int iStack_1cc;" (primitive_type "int") (identifier "iStack_1cc") (; ";")) (declaration "code *pcStack_1c8;" (type_identifier "code") (pointer_declarator "*pcStack_1c8" (* "*") (identifier "pcStack_1c8")) (; ";")) (declaration "code *pcStack_1c4;" (type_identifier "code") (pointer_declarator "*pcStack_1c4" (* "*") (identifier "pcStack_1c4")) (; ";")) (declaration "uint uStack_1c0;" (type_identifier "uint") (identifier "uStack_1c0") (; ";")) (declaration "byte bStack_1b9;" (type_identifier "byte") (identifier "bStack_1b9") (; ";")) (declaration "code *pcStack_1b8;" (type_identifier "code") (pointer_declarator "*pcStack_1b8" (* "*") (identifier "pcStack_1b8")) (; ";")) (declaration "code *pcStack_1b4;" (type_identifier "code") (pointer_declarator "*pcStack_1b4" (* "*") (identifier "pcStack_1b4")) (; ";")) (declaration "code *pcStack_1b0;" (type_identifier "code") (pointer_declarator "*pcStack_1b0" (* "*") (identifier "pcStack_1b0")) (; ";")) (declaration "int iStack_1ac;" (primitive_type "int") (identifier "iStack_1ac") (; ";")) (declaration "code *pcStack_1a8;" (type_identifier "code") (pointer_declarator "*pcStack_1a8" (* "*") (identifier "pcStack_1a8")) (; ";")) (declaration "uint uStack_1a0;" (type_identifier "uint") (identifier "uStack_1a0") (; ";")) (declaration "code *pcStack_19c;" (type_identifier "code") (pointer_declarator "*pcStack_19c" (* "*") (identifier "pcStack_19c")) (; ";")) (declaration "code *pcStack_198;" (type_identifier "code") (pointer_declarator "*pcStack_198" (* "*") (identifier "pcStack_198")) (; ";")) (declaration "code *pcStack_194;" (type_identifier "code") (pointer_declarator "*pcStack_194" (* "*") (identifier "pcStack_194")) (; ";")) (declaration "int *piStack_190;" (primitive_type "int") (pointer_declarator "*piStack_190" (* "*") (identifier "piStack_190")) (; ";")) (declaration "code *pcStack_18c;" (type_identifier "code") (pointer_declarator "*pcStack_18c" (* "*") (identifier "pcStack_18c")) (; ";")) (declaration "uint uStack_188;" (type_identifier "uint") (identifier "uStack_188") (; ";")) (declaration "uint *puStack_184;" (type_identifier "uint") (pointer_declarator "*puStack_184" (* "*") (identifier "puStack_184")) (; ";")) (declaration "code *pcStack_180;" (type_identifier "code") (pointer_declarator "*pcStack_180" (* "*") (identifier "pcStack_180")) (; ";")) (declaration "code *pcStack_17c;" (type_identifier "code") (pointer_declarator "*pcStack_17c" (* "*") (identifier "pcStack_17c")) (; ";")) (declaration "undefined4 uStack_168;" (type_identifier "undefined4") (identifier "uStack_168") (; ";")) (declaration "code *pcStack_164;" (type_identifier "code") (pointer_declarator "*pcStack_164" (* "*") (identifier "pcStack_164")) (; ";")) (declaration "code *pcStack_160;" (type_identifier "code") (pointer_declarator "*pcStack_160" (* "*") (identifier "pcStack_160")) (; ";")) (declaration "code *pcStack_15c;" (type_identifier "code") (pointer_declarator "*pcStack_15c" (* "*") (identifier "pcStack_15c")) (; ";")) (declaration "uint uStack_158;" (type_identifier "uint") (identifier "uStack_158") (; ";")) (declaration "byte bStack_151;" (type_identifier "byte") (identifier "bStack_151") (; ";")) (declaration "code *pcStack_150;" (type_identifier "code") (pointer_declarator "*pcStack_150" (* "*") (identifier "pcStack_150")) (; ";")) (declaration "code *pcStack_14c;" (type_identifier "code") (pointer_declarator "*pcStack_14c" (* "*") (identifier "pcStack_14c")) (; ";")) (declaration "code *pcStack_148;" (type_identifier "code") (pointer_declarator "*pcStack_148" (* "*") (identifier "pcStack_148")) (; ";")) (declaration "code *pcStack_144;" (type_identifier "code") (pointer_declarator "*pcStack_144" (* "*") (identifier "pcStack_144")) (; ";")) (declaration "code *pcStack_140;" (type_identifier "code") (pointer_declarator "*pcStack_140" (* "*") (identifier "pcStack_140")) (; ";")) (declaration "code *pcStack_13c;" (type_identifier "code") (pointer_declarator "*pcStack_13c" (* "*") (identifier "pcStack_13c")) (; ";")) (declaration "code *pcStack_138;" (type_identifier "code") (pointer_declarator "*pcStack_138" (* "*") (identifier "pcStack_138")) (; ";")) (declaration "code *pcStack_134;" (type_identifier "code") (pointer_declarator "*pcStack_134" (* "*") (identifier "pcStack_134")) (; ";")) (declaration "int *piStack_130;" (primitive_type "int") (pointer_declarator "*piStack_130" (* "*") (identifier "piStack_130")) (; ";")) (declaration "code *pcStack_12c;" (type_identifier "code") (pointer_declarator "*pcStack_12c" (* "*") (identifier "pcStack_12c")) (; ";")) (declaration "uint uStack_128;" (type_identifier "uint") (identifier "uStack_128") (; ";")) (declaration "uint *puStack_124;" (type_identifier "uint") (pointer_declarator "*puStack_124" (* "*") (identifier "puStack_124")) (; ";")) (declaration "code *pcStack_120;" (type_identifier "code") (pointer_declarator "*pcStack_120" (* "*") (identifier "pcStack_120")) (; ";")) (declaration "code *pcStack_11c;" (type_identifier "code") (pointer_declarator "*pcStack_11c" (* "*") (identifier "pcStack_11c")) (; ";")) (declaration "undefined4 uStack_108;" (type_identifier "undefined4") (identifier "uStack_108") (; ";")) (declaration "int iStack_104;" (primitive_type "int") (identifier "iStack_104") (; ";")) (declaration "code *pcStack_100;" (type_identifier "code") (pointer_declarator "*pcStack_100" (* "*") (identifier "pcStack_100")) (; ";")) (declaration "code *pcStack_fc;" (type_identifier "code") (pointer_declarator "*pcStack_fc" (* "*") (identifier "pcStack_fc")) (; ";")) (declaration "uint uStack_f8;" (type_identifier "uint") (identifier "uStack_f8") (; ";")) (declaration "byte bStack_f1;" (type_identifier "byte") (identifier "bStack_f1") (; ";")) (declaration "code *pcStack_f0;" (type_identifier "code") (pointer_declarator "*pcStack_f0" (* "*") (identifier "pcStack_f0")) (; ";")) (declaration "code *pcStack_ec;" (type_identifier "code") (pointer_declarator "*pcStack_ec" (* "*") (identifier "pcStack_ec")) (; ";")) (declaration "code *pcStack_e8;" (type_identifier "code") (pointer_declarator "*pcStack_e8" (* "*") (identifier "pcStack_e8")) (; ";")) (declaration "int iStack_e4;" (primitive_type "int") (identifier "iStack_e4") (; ";")) (declaration "code *pcStack_e0;" (type_identifier "code") (pointer_declarator "*pcStack_e0" (* "*") (identifier "pcStack_e0")) (; ";")) (declaration "undefined4 *puStack_d4;" (type_identifier "undefined4") (pointer_declarator "*puStack_d4" (* "*") (identifier "puStack_d4")) (; ";")) (declaration "code *pcStack_d0;" (type_identifier "code") (pointer_declarator "*pcStack_d0" (* "*") (identifier "pcStack_d0")) (; ";")) (declaration "int *piStack_c8;" (primitive_type "int") (pointer_declarator "*piStack_c8" (* "*") (identifier "piStack_c8")) (; ";")) (declaration "code *pcStack_c4;" (type_identifier "code") (pointer_declarator "*pcStack_c4" (* "*") (identifier "pcStack_c4")) (; ";")) (declaration "uint uStack_c0;" (type_identifier "uint") (identifier "uStack_c0") (; ";")) (declaration "uint *puStack_bc;" (type_identifier "uint") (pointer_declarator "*puStack_bc" (* "*") (identifier "puStack_bc")) (; ";")) (declaration "code *pcStack_b8;" (type_identifier "code") (pointer_declarator "*pcStack_b8" (* "*") (identifier "pcStack_b8")) (; ";")) (declaration "code *pcStack_b4;" (type_identifier "code") (pointer_declarator "*pcStack_b4" (* "*") (identifier "pcStack_b4")) (; ";")) (declaration "undefined4 uStack_a0;" (type_identifier "undefined4") (identifier "uStack_a0") (; ";")) (declaration "code *pcStack_9c;" (type_identifier "code") (pointer_declarator "*pcStack_9c" (* "*") (identifier "pcStack_9c")) (; ";")) (declaration "code *pcStack_98;" (type_identifier "code") (pointer_declarator "*pcStack_98" (* "*") (identifier "pcStack_98")) (; ";")) (declaration "code *pcStack_94;" (type_identifier "code") (pointer_declarator "*pcStack_94" (* "*") (identifier "pcStack_94")) (; ";")) (declaration "uint uStack_90;" (type_identifier "uint") (identifier "uStack_90") (; ";")) (declaration "byte bStack_89;" (type_identifier "byte") (identifier "bStack_89") (; ";")) (declaration "code *pcStack_88;" (type_identifier "code") (pointer_declarator "*pcStack_88" (* "*") (identifier "pcStack_88")) (; ";")) (declaration "code *pcStack_84;" (type_identifier "code") (pointer_declarator "*pcStack_84" (* "*") (identifier "pcStack_84")) (; ";")) (declaration "code *pcStack_80;" (type_identifier "code") (pointer_declarator "*pcStack_80" (* "*") (identifier "pcStack_80")) (; ";")) (declaration "code *pcStack_7c;" (type_identifier "code") (pointer_declarator "*pcStack_7c" (* "*") (identifier "pcStack_7c")) (; ";")) (declaration "undefined *puStack_78;" (type_identifier "undefined") (pointer_declarator "*puStack_78" (* "*") (identifier "puStack_78")) (; ";")) (declaration "int *piStack_74;" (primitive_type "int") (pointer_declarator "*piStack_74" (* "*") (identifier "piStack_74")) (; ";")) (declaration "int iStack_3c;" (primitive_type "int") (identifier "iStack_3c") (; ";")) (declaration "undefined4 *puStack_38;" (type_identifier "undefined4") (pointer_declarator "*puStack_38" (* "*") (identifier "puStack_38")) (; ";")) (declaration "code *pcStack_28;" (type_identifier "code") (pointer_declarator "*pcStack_28" (* "*") (identifier "pcStack_28")) (; ";")) (declaration "int iStack_24;" (primitive_type "int") (identifier "iStack_24") (; ";")) (declaration "int iStack_20;" (primitive_type "int") (identifier "iStack_20") (; ";")) (if_statement "if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {\n    return (code *)0x1;\n  }" (if "if") (parenthesized_expression "(((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0))" (( "(") (binary_expression "((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)" (parenthesized_expression "((*(uint *)(param_3 + 0x5c) & 2) == 0)" (( "(") (binary_expression "(*(uint *)(param_3 + 0x5c) & 2) == 0" (parenthesized_expression "(*(uint *)(param_3 + 0x5c) & 2)" (( "(") (binary_expression "*(uint *)(param_3 + 0x5c) & 2" (pointer_expression "*(uint *)(param_3 + 0x5c)" (* "*") (cast_expression "(uint *)(param_3 + 0x5c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_3 + 0x5c)" (( "(") (binary_expression "param_3 + 0x5c" (identifier "param_3") (+ "+") (number_literal "0x5c")) () ")")))) (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(param_1 == (code *)0x0)" (( "(") (binary_expression "param_1 == (code *)0x0" (identifier "param_1") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (compound_statement "{\n    return (code *)0x1;\n  }" ({ "{") (return_statement "return (code *)0x1;" (return "return") (cast_expression "(code *)0x1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1")) (; ";")) (} "}"))) (expression_statement "piVar5 = param_4;" (assignment_expression "piVar5 = param_4" (identifier "piVar5") (= "=") (identifier "param_4")) (; ";")) (if_statement "if (param_2 - 1U < 0xf9) {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }\n  else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" (if "if") (parenthesized_expression "(param_2 - 1U < 0xf9)" (( "(") (binary_expression "param_2 - 1U < 0xf9" (binary_expression "param_2 - 1U" (identifier "param_2") (- "-") (number_literal "1U")) (< "<") (number_literal "0xf9")) () ")")) (compound_statement "{\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" ({ "{") (expression_statement "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);" (assignment_expression "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9])" (identifier "iVar2") (= "=") (call_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)\n                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9])" (parenthesized_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)" (( "(") (pointer_expression "*(code *)PTR_needs_dynamic_reloc_004c1b58" (* "*") (cast_expression "(code *)PTR_needs_dynamic_reloc_004c1b58" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_needs_dynamic_reloc_004c1b58"))) () ")")) (argument_list "(param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9])" (( "(") (identifier "param_1") (, ",") (cast_expression "(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)PTR_s__s_004c1a50[param_2 + -0x56e9]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "PTR_s__s_004c1a50[param_2 + -0x56e9]" (identifier "PTR_s__s_004c1a50") ([ "[") (binary_expression "param_2 + -0x56e9" (identifier "param_2") (+ "+") (number_literal "-0x56e9")) (] "]")))) () ")")))) (; ";")) (expression_statement "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;" (assignment_expression "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30" (identifier "pcVar4") (= "=") (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_gold_unreachable_004c1a30"))) (; ";")) (} "}")) (else_clause "else {\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" (else "else") (compound_statement "{\n    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);\n    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;\n  }" ({ "{") (expression_statement "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);" (assignment_expression "iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0)" (identifier "iVar2") (= "=") (call_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0)" (parenthesized_expression "(*(code *)PTR_needs_dynamic_reloc_004c1b58)" (( "(") (pointer_expression "*(code *)PTR_needs_dynamic_reloc_004c1b58" (* "*") (cast_expression "(code *)PTR_needs_dynamic_reloc_004c1b58" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_needs_dynamic_reloc_004c1b58"))) () ")")) (argument_list "(param_1,0)" (( "(") (identifier "param_1") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;" (assignment_expression "pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30" (identifier "pcVar4") (= "=") (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_gold_unreachable_004c1a30"))) (; ";")) (} "}")))) (if_statement "if (iVar2 != 0) {\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    PTR_do_gold_unreachable_004c1a30 = pcVar4;\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }\n    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }\n    if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }\n    do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);\n  }" ({ "{") (expression_statement "PTR_do_gold_unreachable_004c1a30 = pcVar4;" (assignment_expression "PTR_do_gold_unreachable_004c1a30 = pcVar4" (identifier "PTR_do_gold_unreachable_004c1a30") (= "=") (identifier "pcVar4")) (; ";")) (if_statement "if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }" (if "if") (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0)" (( "(") (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" (* "*") (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" (( "(") (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" (* "*") (cast_expression "(int *)PTR_parameters_004c19b4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_004c19b4"))) (+ "+") (number_literal "8")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      iVar2 = 0x5c;\n      puVar9 = PTR_s__s_004c1a50 + -0x33c8;\n      pcVar3 = FUN_000e8e74;\n      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      (*pcVar4)();\n      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }\n      piVar7 = piVar5;\n      if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }\n      return (code *)0x1;\n    }" ({ "{") (expression_statement "iVar2 = 0x5c;" (assignment_expression "iVar2 = 0x5c" (identifier "iVar2") (= "=") (number_literal "0x5c")) (; ";")) (expression_statement "puVar9 = PTR_s__s_004c1a50 + -0x33c8;" (assignment_expression "puVar9 = PTR_s__s_004c1a50 + -0x33c8" (identifier "puVar9") (= "=") (binary_expression "PTR_s__s_004c1a50 + -0x33c8" (identifier "PTR_s__s_004c1a50") (+ "+") (number_literal "-0x33c8"))) (; ";")) (expression_statement "pcVar3 = FUN_000e8e74;" (assignment_expression "pcVar3 = FUN_000e8e74" (identifier "pcVar3") (= "=") (identifier "FUN_000e8e74")) (; ";")) (expression_statement "puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;" (assignment_expression "puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" (identifier "puVar8") (= "=") (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" (identifier "PTR_s_ral_options14Struct_no_crefE_004c127c") (+ "+") (number_literal "-0x9b8"))) (; ";")) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {\n        return (code *)0x1;\n      }" (if "if") (parenthesized_expression "(((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0))" (( "(") (binary_expression "((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)" (parenthesized_expression "((*(uint *)(puVar9 + 0x5c) & 2) == 0)" (( "(") (binary_expression "(*(uint *)(puVar9 + 0x5c) & 2) == 0" (parenthesized_expression "(*(uint *)(puVar9 + 0x5c) & 2)" (( "(") (binary_expression "*(uint *)(puVar9 + 0x5c) & 2" (pointer_expression "*(uint *)(puVar9 + 0x5c)" (* "*") (cast_expression "(uint *)(puVar9 + 0x5c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar9 + 0x5c)" (( "(") (binary_expression "puVar9 + 0x5c" (identifier "puVar9") (+ "+") (number_literal "0x5c")) () ")")))) (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(puVar8 == (undefined *)0x0)" (( "(") (binary_expression "puVar8 == (undefined *)0x0" (identifier "puVar8") (== "==") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (compound_statement "{\n        return (code *)0x1;\n      }" ({ "{") (return_statement "return (code *)0x1;" (return "return") (cast_expression "(code *)0x1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1")) (; ";")) (} "}"))) (expression_statement "piVar7 = piVar5;" (assignment_expression "piVar7 = piVar5" (identifier "piVar7") (= "=") (identifier "piVar5")) (; ";")) (if_statement "if (iVar2 - 1U < 0xf9) {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }\n      else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" (if "if") (parenthesized_expression "(iVar2 - 1U < 0xf9)" (( "(") (binary_expression "iVar2 - 1U < 0xf9" (binary_expression "iVar2 - 1U" (identifier "iVar2") (- "-") (number_literal "1U")) (< "<") (number_literal "0xf9")) () ")")) (compound_statement "{\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" ({ "{") (expression_statement "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();" (assignment_expression "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))()" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcVar4 + 0x3d8ce4))()" (parenthesized_expression "(**(code **)(pcVar4 + 0x3d8ce4))" (( "(") (pointer_expression "**(code **)(pcVar4 + 0x3d8ce4)" (* "*") (pointer_expression "*(code **)(pcVar4 + 0x3d8ce4)" (* "*") (cast_expression "(code **)(pcVar4 + 0x3d8ce4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + 0x3d8ce4)" (( "(") (binary_expression "pcVar4 + 0x3d8ce4" (identifier "pcVar4") (+ "+") (number_literal "0x3d8ce4")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (} "}")) (else_clause "else {\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" (else "else") (compound_statement "{\n        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();\n      }" ({ "{") (expression_statement "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();" (assignment_expression "iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))()" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcVar4 + 0x3d8ce4))()" (parenthesized_expression "(**(code **)(pcVar4 + 0x3d8ce4))" (( "(") (pointer_expression "**(code **)(pcVar4 + 0x3d8ce4)" (* "*") (pointer_expression "*(code **)(pcVar4 + 0x3d8ce4)" (* "*") (cast_expression "(code **)(pcVar4 + 0x3d8ce4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + 0x3d8ce4)" (( "(") (binary_expression "pcVar4 + 0x3d8ce4" (identifier "pcVar4") (+ "+") (number_literal "0x3d8ce4")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (} "}")))) (if_statement "if (iVar2 != 0) {\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }\n        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }\n        if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }\n        do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);\n      }" ({ "{") (if_statement "if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }" (if "if") (parenthesized_expression "(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0)" (( "(") (binary_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0" (pointer_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" (* "*") (cast_expression "(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(**(int **)(pcVar4 + 0x3d8b40) + 8)" (( "(") (binary_expression "**(int **)(pcVar4 + 0x3d8b40) + 8" (pointer_expression "**(int **)(pcVar4 + 0x3d8b40)" (* "*") (pointer_expression "*(int **)(pcVar4 + 0x3d8b40)" (* "*") (cast_expression "(int **)(pcVar4 + 0x3d8b40)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + 0x3d8b40)" (( "(") (binary_expression "pcVar4 + 0x3d8b40" (identifier "pcVar4") (+ "+") (number_literal "0x3d8b40")) () ")"))))) (+ "+") (number_literal "8")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);\n          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );\n          pcVar22 = pcVar20 + 0x3e022c;\n          uVar17 = (uint)pcVar3 & 0xff;\n          piVar13 = piVar7;\n          pcStack_98 = pcVar22;\n          puStack_78 = puVar8;\n          piStack_74 = piVar5;\n          if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }\n          return pcVar3;\n        }" ({ "{") (expression_statement "pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);" (assignment_expression "pcVar20 = *(code **)(pcVar4 + 0x3d8bbc)" (identifier "pcVar20") (= "=") (pointer_expression "*(code **)(pcVar4 + 0x3d8bbc)" (* "*") (cast_expression "(code **)(pcVar4 + 0x3d8bbc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + 0x3d8bbc)" (( "(") (binary_expression "pcVar4 + 0x3d8bbc" (identifier "pcVar4") (+ "+") (number_literal "0x3d8bbc")) () ")"))))) (; ";")) (expression_statement "(*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    );" (call_expression "(*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    )" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8\n                    )" (( "(") (binary_expression "*(int *)(pcVar4 + 0x3d8408) + -0x9b8" (pointer_expression "*(int *)(pcVar4 + 0x3d8408)" (* "*") (cast_expression "(int *)(pcVar4 + 0x3d8408)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + 0x3d8408)" (( "(") (binary_expression "pcVar4 + 0x3d8408" (identifier "pcVar4") (+ "+") (number_literal "0x3d8408")) () ")")))) (+ "+") (number_literal "-0x9b8")) (, ",") (number_literal "0x5c") (, ",") (binary_expression "*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8" (pointer_expression "*(int *)(pcVar4 + 0x3d8bdc)" (* "*") (cast_expression "(int *)(pcVar4 + 0x3d8bdc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + 0x3d8bdc)" (( "(") (binary_expression "pcVar4 + 0x3d8bdc" (identifier "pcVar4") (+ "+") (number_literal "0x3d8bdc")) () ")")))) (+ "+") (number_literal "-0x33c8")) () ")"))) (; ";")) (expression_statement "pcVar22 = pcVar20 + 0x3e022c;" (assignment_expression "pcVar22 = pcVar20 + 0x3e022c" (identifier "pcVar22") (= "=") (binary_expression "pcVar20 + 0x3e022c" (identifier "pcVar20") (+ "+") (number_literal "0x3e022c"))) (; ";")) (expression_statement "uVar17 = (uint)pcVar3 & 0xff;" (assignment_expression "uVar17 = (uint)pcVar3 & 0xff" (identifier "uVar17") (= "=") (binary_expression "(uint)pcVar3 & 0xff" (cast_expression "(uint)pcVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar3")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "piVar13 = piVar7;" (assignment_expression "piVar13 = piVar7" (identifier "piVar13") (= "=") (identifier "piVar7")) (; ";")) (expression_statement "pcStack_98 = pcVar22;" (assignment_expression "pcStack_98 = pcVar22" (identifier "pcStack_98") (= "=") (identifier "pcVar22")) (; ";")) (expression_statement "puStack_78 = puVar8;" (assignment_expression "puStack_78 = puVar8" (identifier "puStack_78") (= "=") (identifier "puVar8")) (; ";")) (expression_statement "piStack_74 = piVar5;" (assignment_expression "piStack_74 = piVar5" (identifier "piStack_74") (= "=") (identifier "piVar5")) (; ";")) (if_statement "if (iStack_3c == 9) {\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }\n          else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }" (if "if") (parenthesized_expression "(iStack_3c == 9)" (( "(") (binary_expression "iStack_3c == 9" (identifier "iStack_3c") (== "==") (number_literal "9")) () ")")) (compound_statement "{\n            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);\n            pcVar3 = pcStack_88;\n            if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }\n          }" ({ "{") (expression_statement "pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);" (assignment_expression "pcStack_88 = *(code **)(pcVar20 + 0x3d8b10)" (identifier "pcStack_88") (= "=") (pointer_expression "*(code **)(pcVar20 + 0x3d8b10)" (* "*") (cast_expression "(code **)(pcVar20 + 0x3d8b10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x3d8b10)" (( "(") (binary_expression "pcVar20 + 0x3d8b10" (identifier "pcVar20") (+ "+") (number_literal "0x3d8b10")) () ")"))))) (; ";")) (expression_statement "pcVar3 = pcStack_88;" (assignment_expression "pcVar3 = pcStack_88" (identifier "pcVar3") (= "=") (identifier "pcStack_88")) (; ";")) (if_statement "if (param_1 != (code *)0x0) {\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }" (if "if") (parenthesized_expression "(param_1 != (code *)0x0)" (( "(") (binary_expression "param_1 != (code *)0x0" (identifier "param_1") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              unaff_s2 = (code *)0x0;\n              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);\n              unaff_s8 = (code *)&uStack_90;\n              unaff_s7 = (uint *)0xff00;\n              do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);\n            }" ({ "{") (expression_statement "unaff_s2 = (code *)0x0;" (assignment_expression "unaff_s2 = (code *)0x0" (identifier "unaff_s2") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);" (assignment_expression "unaff_s5 = *(code **)(pcVar20 + 0x3d8b48)" (identifier "unaff_s5") (= "=") (pointer_expression "*(code **)(pcVar20 + 0x3d8b48)" (* "*") (cast_expression "(code **)(pcVar20 + 0x3d8b48)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x3d8b48)" (( "(") (binary_expression "pcVar20 + 0x3d8b48" (identifier "pcVar20") (+ "+") (number_literal "0x3d8b48")) () ")"))))) (; ";")) (expression_statement "unaff_s8 = (code *)&uStack_90;" (assignment_expression "unaff_s8 = (code *)&uStack_90" (identifier "unaff_s8") (= "=") (cast_expression "(code *)&uStack_90" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&uStack_90" (& "&") (identifier "uStack_90")))) (; ";")) (expression_statement "unaff_s7 = (uint *)0xff00;" (assignment_expression "unaff_s7 = (uint *)0xff00" (identifier "unaff_s7") (= "=") (cast_expression "(uint *)0xff00" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xff00"))) (; ";")) (do_statement "do {\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s2);" (do "do") (compound_statement "{\n                if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }\n                unaff_s2 = unaff_s2 + 1;\n                puStack_38 = puStack_38 + 2;\n                pcVar3 = param_1;\n              }" ({ "{") (if_statement "if (uVar17 == 0) {\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }\n                else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }" (if "if") (parenthesized_expression "(uVar17 == 0)" (( "(") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                  if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }\n                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                }" ({ "{") (labeled_statement "LAB_000e9358:\n                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);" (statement_identifier "LAB_000e9358") (: ":") (expression_statement "pcVar3 = (code *)((uint)puStack_38[1] >> 8);" (assignment_expression "pcVar3 = (code *)((uint)puStack_38[1] >> 8)" (identifier "pcVar3") (= "=") (cast_expression "(code *)((uint)puStack_38[1] >> 8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)puStack_38[1] >> 8)" (( "(") (binary_expression "(uint)puStack_38[1] >> 8" (cast_expression "(uint)puStack_38[1]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "puStack_38[1]" (identifier "puStack_38") ([ "[") (number_literal "1") (] "]"))) (>> ">>") (number_literal "8")) () ")")))) (; ";"))) (if_statement "if (pcVar3 < pcStack_28) {\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }\n                  else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }" (if "if") (parenthesized_expression "(pcVar3 < pcStack_28)" (( "(") (binary_expression "pcVar3 < pcStack_28" (identifier "pcVar3") (< "<") (identifier "pcStack_28")) () ")")) (compound_statement "{\n                    pcVar20 = (code *)((int)pcVar3 * 0x10);\n                    pcVar22 = pcStack_98;\n                    if (iStack_24 == 0) goto LAB_000e9610;\n                    pcVar15 = pcVar20 + iStack_24;\n                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                    if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }\n                    pcVar22 = pcStack_98;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                  }" ({ "{") (expression_statement "pcVar20 = (code *)((int)pcVar3 * 0x10);" (assignment_expression "pcVar20 = (code *)((int)pcVar3 * 0x10)" (identifier "pcVar20") (= "=") (cast_expression "(code *)((int)pcVar3 * 0x10)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar3 * 0x10)" (( "(") (binary_expression "(int)pcVar3 * 0x10" (cast_expression "(int)pcVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar3")) (* "*") (number_literal "0x10")) () ")")))) (; ";")) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" (identifier "pcVar22") (= "=") (identifier "pcStack_98")) (; ";")) (if_statement "if (iStack_24 == 0) goto LAB_000e9610;" (if "if") (parenthesized_expression "(iStack_24 == 0)" (( "(") (binary_expression "iStack_24 == 0" (identifier "iStack_24") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e9610;" (goto "goto") (statement_identifier "LAB_000e9610") (; ";"))) (expression_statement "pcVar15 = pcVar20 + iStack_24;" (assignment_expression "pcVar15 = pcVar20 + iStack_24" (identifier "pcVar15") (= "=") (binary_expression "pcVar20 + iStack_24" (identifier "pcVar20") (+ "+") (identifier "iStack_24"))) (; ";")) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe)" (identifier "uVar6") (= "=") (binary_expression "(uint)*(ushort *)(pcVar15 + 0xe)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(ushort *)(pcVar15 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe)" (( "(") (binary_expression "pcVar15 + 0xe" (identifier "pcVar15") (+ "+") (number_literal "0xe")) () ")"))))) (; ";")) (if_statement "if (uVar6 < 0xff00) {\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }" (if "if") (parenthesized_expression "(uVar6 < 0xff00)" (( "(") (binary_expression "uVar6 < 0xff00" (identifier "uVar6") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;\n                      iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                      pcVar22 = pcStack_98;\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;\n                      cVar1 = pcVar15[0xc];\n                    }" ({ "{") (labeled_statement "LAB_000e948c:\n                      if (uVar6 == 0) goto LAB_000e9394;" (statement_identifier "LAB_000e948c") (: ":") (if_statement "if (uVar6 == 0) goto LAB_000e9394;" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e9394;" (goto "goto") (statement_identifier "LAB_000e9394") (; ";")))) (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_98 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_98 + -0x77f0)" (( "(") (binary_expression "pcStack_98 + -0x77f0" (identifier "pcStack_98") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" (identifier "pcVar22") (= "=") (identifier "pcStack_98")) (; ";")) (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;" (if "if") (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" (identifier "piVar7") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000e962c;" (goto "goto") (statement_identifier "LAB_000e962c") (; ";"))) (if_statement "if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;" (if "if") (parenthesized_expression "(*(int *)(piVar7[0xe] + uVar6 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar7[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e9434;" (goto "goto") (statement_identifier "LAB_000e9434") (; ";"))) (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar15[0xc]" (identifier "pcVar15") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }" (else "else") (compound_statement "{\n                      if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }\nLAB_000e9394:\n                      cVar1 = pcVar15[0xc];\n                    }" ({ "{") (if_statement "if (uVar6 == 0xffff) {\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }" (if "if") (parenthesized_expression "(uVar6 == 0xffff)" (( "(") (binary_expression "uVar6 == 0xffff" (identifier "uVar6") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                        iVar2 = piVar7[0xc];\n                        pcStack_84 = pcVar3;\n                        pcStack_7c = pcVar15;\n                        pcStack_80 = pcVar20;\n                        if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }\n                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);\n                        pcVar3 = pcStack_84;\n                        pcVar15 = pcStack_7c;\n                        pcVar20 = pcStack_80;\n                        goto LAB_000e948c;\n                      }" ({ "{") (expression_statement "iVar2 = piVar7[0xc];" (assignment_expression "iVar2 = piVar7[0xc]" (identifier "iVar2") (= "=") (subscript_expression "piVar7[0xc]" (identifier "piVar7") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "pcStack_84 = pcVar3;" (assignment_expression "pcStack_84 = pcVar3" (identifier "pcStack_84") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "pcStack_7c = pcVar15;" (assignment_expression "pcStack_7c = pcVar15" (identifier "pcStack_7c") (= "=") (identifier "pcVar15")) (; ";")) (expression_statement "pcStack_80 = pcVar20;" (assignment_expression "pcStack_80 = pcVar20" (identifier "pcStack_80") (= "=") (identifier "pcVar20")) (; ";")) (if_statement "if (iVar2 == 0) {\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                          piVar7[0xc] = iVar2;\n                        }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar7 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar7 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar7 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x6c)" (( "(") (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar7)" (( "(") (identifier "piVar7") () ")")))) (; ";")) (expression_statement "piVar7[0xc] = iVar2;" (assignment_expression "piVar7[0xc] = iVar2" (subscript_expression "piVar7[0xc]" (identifier "piVar7") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar2")) (; ";")) (} "}"))) (expression_statement "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);" (assignment_expression "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84)" (identifier "uVar6") (= "=") (call_expression "(**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_98 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_98 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_98 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_98 + -0x7790)" (( "(") (binary_expression "pcStack_98 + -0x7790" (identifier "pcStack_98") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar2,piVar7,pcStack_84)" (( "(") (identifier "iVar2") (, ",") (identifier "piVar7") (, ",") (identifier "pcStack_84") () ")")))) (; ";")) (expression_statement "pcVar3 = pcStack_84;" (assignment_expression "pcVar3 = pcStack_84" (identifier "pcVar3") (= "=") (identifier "pcStack_84")) (; ";")) (expression_statement "pcVar15 = pcStack_7c;" (assignment_expression "pcVar15 = pcStack_7c" (identifier "pcVar15") (= "=") (identifier "pcStack_7c")) (; ";")) (expression_statement "pcVar20 = pcStack_80;" (assignment_expression "pcVar20 = pcStack_80" (identifier "pcVar20") (= "=") (identifier "pcStack_80")) (; ";")) (goto_statement "goto LAB_000e948c;" (goto "goto") (statement_identifier "LAB_000e948c") (; ";")) (} "}"))) (labeled_statement "LAB_000e9394:\n                      cVar1 = pcVar15[0xc];" (statement_identifier "LAB_000e9394") (: ":") (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar15[0xc]" (identifier "pcVar15") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (} "}")))) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" (identifier "pcVar22") (= "=") (identifier "pcStack_98")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }\n                    else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_90 = CONCAT13(2,uStack_90._1_3_);\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" ({ "{") (if_statement "if (*(code **)(*piVar7 + 0x60) == pcStack_88) {\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" (if "if") (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == pcStack_88)" (( "(") (binary_expression "*(code **)(*piVar7 + 0x60) == pcStack_88" (pointer_expression "*(code **)(*piVar7 + 0x60)" (* "*") (cast_expression "(code **)(*piVar7 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x60)" (( "(") (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcStack_88")) () ")")) (compound_statement "{\n                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" ({ "{") (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;" (if "if") (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" (identifier "piVar7") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000e95d8;" (goto "goto") (statement_identifier "LAB_000e95d8") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" (else "else") (compound_statement "{\n                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar7 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar7 + 0x60)" (* "*") (cast_expression "(code **)(*piVar7 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x60)" (( "(") (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar7,uVar6)" (( "(") (identifier "piVar7") (, ",") (identifier "uVar6") () ")")))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" (identifier "uVar6") (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_90 = CONCAT13(2,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(2,uStack_90._1_3_)" (identifier "uStack_90") (= "=") (call_expression "CONCAT13(2,uStack_90._1_3_)" (identifier "CONCAT13") (argument_list "(2,uStack_90._1_3_)" (( "(") (number_literal "2") (, ",") (field_expression "uStack_90._1_3_" (identifier "uStack_90") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" (( "(") (pointer_expression "*unaff_s5" (* "*") (identifier "unaff_s5")) () ")")) (argument_list "(iStack_20,unaff_s8)" (( "(") (identifier "iStack_20") (, ",") (identifier "unaff_s8") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" (else "else") (compound_statement "{\n                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;\n                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);\n                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;\n                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s5)(iStack_20,unaff_s8);\n                    }" ({ "{") (if_statement "if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;" (if "if") (parenthesized_expression "((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3)" (( "(") (binary_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3" (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" (( "(") (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" (identifier "piVar7") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar7[0x3a]" (identifier "piVar7") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "4")) () ")"))) (<= "<=") (identifier "pcVar3")) () ")")) (goto_statement "goto LAB_000e95bc;" (goto "goto") (statement_identifier "LAB_000e95bc") (; ";"))) (expression_statement "iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);" (assignment_expression "iVar2 = *(int *)(pcVar20 + piVar7[0x3a])" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar20 + piVar7[0x3a])" (* "*") (cast_expression "(int *)(pcVar20 + piVar7[0x3a])" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + piVar7[0x3a])" (( "(") (binary_expression "pcVar20 + piVar7[0x3a]" (identifier "pcVar20") (+ "+") (subscript_expression "piVar7[0x3a]" (identifier "piVar7") ([ "[") (number_literal "0x3a") (] "]"))) () ")"))))) (; ";")) (if_statement "if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))\n                      goto LAB_000e9238;" (if "if") (parenthesized_expression "((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))" (( "(") (binary_expression "(iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2)" (( "(") (comma_expression "iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2" (assignment_expression "iVar11 = *(int *)(pcStack_98 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_98 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_98 + -0x77f0)" (( "(") (binary_expression "pcStack_98 + -0x77f0" (identifier "pcStack_98") (+ "+") (number_literal "-0x77f0")) () ")"))))) (, ",") (binary_expression "iVar2 != -2" (identifier "iVar2") (!= "!=") (number_literal "-2"))) () ")"))) () ")")) (goto_statement "goto LAB_000e9238;" (goto "goto") (statement_identifier "LAB_000e9238") (; ";"))) (expression_statement "*(int *)(pcVar20 + piVar7[0x3a]) = -2;" (assignment_expression "*(int *)(pcVar20 + piVar7[0x3a]) = -2" (pointer_expression "*(int *)(pcVar20 + piVar7[0x3a])" (* "*") (cast_expression "(int *)(pcVar20 + piVar7[0x3a])" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + piVar7[0x3a])" (( "(") (binary_expression "pcVar20 + piVar7[0x3a]" (identifier "pcVar20") (+ "+") (subscript_expression "piVar7[0x3a]" (identifier "piVar7") ([ "[") (number_literal "0x3a") (] "]"))) () ")")))) (= "=") (number_literal "-2")) (; ";")) (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" (identifier "uStack_90") (= "=") (binary_expression "uStack_90 & 0xffffff" (identifier "uStack_90") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" (( "(") (pointer_expression "*unaff_s5" (* "*") (identifier "unaff_s5")) () ")")) (argument_list "(iStack_20,unaff_s8)" (( "(") (identifier "iStack_20") (, ",") (identifier "unaff_s8") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }" (else "else") (compound_statement "{\n                    uStack_90 = uStack_90 & 0xffffff;\n                    (*unaff_s5)(iStack_20,unaff_s8);\n                  }" ({ "{") (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" (identifier "uStack_90") (= "=") (binary_expression "uStack_90 & 0xffffff" (identifier "uStack_90") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" (( "(") (pointer_expression "*unaff_s5" (* "*") (identifier "unaff_s5")) () ")")) (argument_list "(iStack_20,unaff_s8)" (( "(") (identifier "iStack_20") (, ",") (identifier "unaff_s8") () ")"))) (; ";")) (} "}")))) (expression_statement "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;" (assignment_expression "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" (* "*") (cast_expression "(int *)(iStack_20 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iStack_20 + 0xc)" (( "(") (binary_expression "iStack_20 + 0xc" (identifier "iStack_20") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "*(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" (* "*") (cast_expression "(int *)(iStack_20 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iStack_20 + 0xc)" (( "(") (binary_expression "iStack_20 + 0xc" (identifier "iStack_20") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }" (else "else") (compound_statement "{\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) goto LAB_000e9358;\nLAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s5)(iStack_20,unaff_s8);\n                }" ({ "{") (expression_statement "pcStack_9c = (code *)*puStack_38;" (assignment_expression "pcStack_9c = (code *)*puStack_38" (identifier "pcStack_9c") (= "=") (cast_expression "(code *)*puStack_38" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puStack_38" (* "*") (identifier "puStack_38")))) (; ";")) (expression_statement "uStack_a0 = 0;" (assignment_expression "uStack_a0 = 0" (identifier "uStack_a0") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);" (assignment_expression "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_98 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_98 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_98 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_98 + -0x76e0)" (( "(") (binary_expression "pcStack_98 + -0x76e0" (identifier "pcStack_98") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(param_4,piVar7,pcVar4 + 0x3e03cc)" (( "(") (identifier "param_4") (, ",") (identifier "piVar7") (, ",") (binary_expression "pcVar4 + 0x3e03cc" (identifier "pcVar4") (+ "+") (number_literal "0x3e03cc")) () ")")))) (; ";")) (if_statement "if (iVar2 != 0) goto LAB_000e9358;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e9358;" (goto "goto") (statement_identifier "LAB_000e9358") (; ";"))) (labeled_statement "LAB_000e9434:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);" (statement_identifier "LAB_000e9434") (: ":") (expression_statement "uStack_90 = CONCAT13(8,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(8,uStack_90._1_3_)" (identifier "uStack_90") (= "=") (call_expression "CONCAT13(8,uStack_90._1_3_)" (identifier "CONCAT13") (argument_list "(8,uStack_90._1_3_)" (( "(") (number_literal "8") (, ",") (field_expression "uStack_90._1_3_" (identifier "uStack_90") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(*unaff_s5)(iStack_20,unaff_s8);" (call_expression "(*unaff_s5)(iStack_20,unaff_s8)" (parenthesized_expression "(*unaff_s5)" (( "(") (pointer_expression "*unaff_s5" (* "*") (identifier "unaff_s5")) () ")")) (argument_list "(iStack_20,unaff_s8)" (( "(") (identifier "iStack_20") (, ",") (identifier "unaff_s8") () ")"))) (; ";")) (} "}")))) (expression_statement "unaff_s2 = unaff_s2 + 1;" (assignment_expression "unaff_s2 = unaff_s2 + 1" (identifier "unaff_s2") (= "=") (binary_expression "unaff_s2 + 1" (identifier "unaff_s2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puStack_38 = puStack_38 + 2;" (assignment_expression "puStack_38 = puStack_38 + 2" (identifier "puStack_38") (= "=") (binary_expression "puStack_38 + 2" (identifier "puStack_38") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "pcVar3 = param_1;" (assignment_expression "pcVar3 = param_1" (identifier "pcVar3") (= "=") (identifier "param_1")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(param_1 != unaff_s2)" (( "(") (binary_expression "param_1 != unaff_s2" (identifier "param_1") (!= "!=") (identifier "unaff_s2")) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }" (else "else") (compound_statement "{\n            if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }\n            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);\n            pcVar3 = param_1;\n            if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }\n          }" ({ "{") (if_statement "if (iStack_3c != 4) {\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }" (if "if") (parenthesized_expression "(iStack_3c != 4)" (( "(") (binary_expression "iStack_3c != 4" (identifier "iStack_3c") (!= "!=") (number_literal "4")) () ")")) (compound_statement "{\nLAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);\nLAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;\n              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);\nLAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);\n              pcVar24 = FUN_000e9644;\n              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);\n              pcVar20 = pcStack_80;\n              pcVar22 = pcStack_84;\n              pcVar3 = pcStack_9c;\n              pcVar4 = pcVar21 + 0x3dfbfc;\n              uVar6 = (uint)bStack_89;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_98;\n              pcStack_100 = pcVar4;\n              puStack_d4 = puStack_38;\n              pcStack_d0 = unaff_s2;\n              piStack_c8 = piVar7;\n              pcStack_c4 = unaff_s5;\n              uStack_c0 = uVar17;\n              puStack_bc = unaff_s7;\n              pcStack_b8 = unaff_s8;\n              pcStack_b4 = pcVar24;\n              if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }\n              pcVar24 = unaff_s2;\n              puVar19 = unaff_s7;\n              pcVar23 = unaff_s8;\n              if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);\nLAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\nLAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);\nLAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\nLAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);\nswitchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000e9d5c;\n              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);\n              pcVar14 = pcStack_e8;\n              pcVar21 = pcStack_ec;\n              pcVar4 = pcVar16 + 0x3df4e4;\n              pcStack_134 = pcVar22;\n              pcStack_140 = pcVar20;\n              uVar17 = (uint)bStack_f1;\n              piVar7 = piVar5;\n              pcVar22 = pcStack_100;\n              pcStack_160 = pcVar4;\n              pcStack_13c = pcVar15;\n              pcStack_138 = pcVar24;\n              piStack_130 = piVar13;\n              pcStack_12c = pcVar3;\n              uStack_128 = uVar6;\n              puStack_124 = puVar19;\n              pcStack_120 = pcVar23;\n              pcStack_11c = pcVar25;\n              if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);\nLAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;\n              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);\nLAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);\n              pcVar26 = FUN_000ea3c0;\n              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);\n              pcVar16 = pcStack_148;\n              pcVar15 = pcStack_14c;\n              pcVar20 = pcStack_164;\n              pcVar4 = pcVar25 + 0x3dee80;\n              pcStack_194 = pcVar21;\n              uStack_1a0 = (uint)pcVar14;\n              puVar18 = (uint *)(uint)bStack_151;\n              piVar13 = piVar7;\n              pcVar21 = pcStack_160;\n              pcStack_1c8 = pcVar4;\n              pcStack_19c = pcVar22;\n              pcStack_198 = pcVar24;\n              piStack_190 = piVar5;\n              pcStack_18c = pcVar3;\n              uStack_188 = uVar17;\n              puStack_184 = puVar19;\n              pcStack_180 = pcVar23;\n              pcStack_17c = pcVar26;\n              if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }\n              if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);\nLAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);\nLAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);\nLAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\nLAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);\nswitchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);\n              pcVar25 = FUN_000eab0c;\n              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);\n              pcVar22 = pcStack_1b0;\n              pcVar3 = pcStack_1b4;\n              pcVar4 = pcVar14 + 0x3de734;\n              pcStack_1fc = pcVar15;\n              pcStack_208 = pcVar16;\n              uVar17 = (uint)bStack_1b9;\n              piVar5 = piVar13;\n              pcVar15 = pcStack_1c8;\n              pcStack_228 = pcVar4;\n              pcStack_204 = pcVar21;\n              pcStack_200 = pcVar24;\n              piStack_1f8 = piVar7;\n              pcStack_1f4 = pcVar20;\n              puStack_1f0 = puVar18;\n              puStack_1ec = puVar19;\n              pcStack_1e8 = pcVar23;\n              pcStack_1e4 = pcVar25;\n              if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }\n              return pcVar4;\n            }" ({ "{") (labeled_statement "LAB_000e95f4:\n              (**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);" (statement_identifier "LAB_000e95f4") (: ":") (expression_statement "(**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c);" (call_expression "(**(code **)(pcVar22 + -0x7810))\n                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar22 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar22 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar22 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + -0x7810)" (( "(") (binary_expression "pcVar22 + -0x7810" (identifier "pcVar22") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,\n                         *(int *)(pcVar22 + -0x77f0) + -0x502c)" (( "(") (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar22 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + -0x7fc4)" (( "(") (binary_expression "pcVar22 + -0x7fc4" (identifier "pcVar22") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x3588")) (, ",") (number_literal "0x27da") (, ",") (binary_expression "*(int *)(pcVar22 + -0x77f0) + -0x502c" (pointer_expression "*(int *)(pcVar22 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar22 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + -0x77f0)" (( "(") (binary_expression "pcVar22 + -0x77f0" (identifier "pcVar22") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x502c")) () ")"))) (; ";"))) (labeled_statement "LAB_000e9610:\n              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;" (statement_identifier "LAB_000e9610") (: ":") (expression_statement "iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;" (assignment_expression "iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044" (identifier "iVar2") (= "=") (binary_expression "*(int *)(pcVar22 + -0x77f0) + -0x5044" (pointer_expression "*(int *)(pcVar22 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar22 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + -0x77f0)" (( "(") (binary_expression "pcVar22 + -0x77f0" (identifier "pcVar22") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x5044"))) (; ";"))) (expression_statement "(**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);" (call_expression "(**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar22 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar22 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar22 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + -0x7810)" (( "(") (binary_expression "pcVar22 + -0x7810" (identifier "pcVar22") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2)" (( "(") (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar22 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + -0x7fc4)" (( "(") (binary_expression "pcVar22 + -0x7fc4" (identifier "pcVar22") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (identifier "iVar2") () ")"))) (; ";")) (labeled_statement "LAB_000e962c:\n              pcVar21 = *(code **)(pcVar22 + -0x7810);" (statement_identifier "LAB_000e962c") (: ":") (expression_statement "pcVar21 = *(code **)(pcVar22 + -0x7810);" (assignment_expression "pcVar21 = *(code **)(pcVar22 + -0x7810)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar22 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar22 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + -0x7810)" (( "(") (binary_expression "pcVar22 + -0x7810" (identifier "pcVar22") (+ "+") (number_literal "-0x7810")) () ")"))))) (; ";"))) (expression_statement "pcVar24 = FUN_000e9644;" (assignment_expression "pcVar24 = FUN_000e9644" (identifier "pcVar24") (= "=") (identifier "FUN_000e9644")) (; ";")) (expression_statement "(*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);" (call_expression "(*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" (parenthesized_expression "(*pcVar21)" (( "(") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21")) () ")")) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc)" (( "(") (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar22 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + -0x7fc4)" (( "(") (binary_expression "pcVar22 + -0x7fc4" (identifier "pcVar22") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x50b") (, ",") (binary_expression "iVar2 + -0x34dc" (identifier "iVar2") (+ "+") (number_literal "-0x34dc")) () ")"))) (; ";")) (expression_statement "pcVar20 = pcStack_80;" (assignment_expression "pcVar20 = pcStack_80" (identifier "pcVar20") (= "=") (identifier "pcStack_80")) (; ";")) (expression_statement "pcVar22 = pcStack_84;" (assignment_expression "pcVar22 = pcStack_84" (identifier "pcVar22") (= "=") (identifier "pcStack_84")) (; ";")) (expression_statement "pcVar3 = pcStack_9c;" (assignment_expression "pcVar3 = pcStack_9c" (identifier "pcVar3") (= "=") (identifier "pcStack_9c")) (; ";")) (expression_statement "pcVar4 = pcVar21 + 0x3dfbfc;" (assignment_expression "pcVar4 = pcVar21 + 0x3dfbfc" (identifier "pcVar4") (= "=") (binary_expression "pcVar21 + 0x3dfbfc" (identifier "pcVar21") (+ "+") (number_literal "0x3dfbfc"))) (; ";")) (expression_statement "uVar6 = (uint)bStack_89;" (assignment_expression "uVar6 = (uint)bStack_89" (identifier "uVar6") (= "=") (cast_expression "(uint)bStack_89" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bStack_89"))) (; ";")) (expression_statement "piVar5 = piVar13;" (assignment_expression "piVar5 = piVar13" (identifier "piVar5") (= "=") (identifier "piVar13")) (; ";")) (expression_statement "pcVar15 = pcStack_98;" (assignment_expression "pcVar15 = pcStack_98" (identifier "pcVar15") (= "=") (identifier "pcStack_98")) (; ";")) (expression_statement "pcStack_100 = pcVar4;" (assignment_expression "pcStack_100 = pcVar4" (identifier "pcStack_100") (= "=") (identifier "pcVar4")) (; ";")) (expression_statement "puStack_d4 = puStack_38;" (assignment_expression "puStack_d4 = puStack_38" (identifier "puStack_d4") (= "=") (identifier "puStack_38")) (; ";")) (expression_statement "pcStack_d0 = unaff_s2;" (assignment_expression "pcStack_d0 = unaff_s2" (identifier "pcStack_d0") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "piStack_c8 = piVar7;" (assignment_expression "piStack_c8 = piVar7" (identifier "piStack_c8") (= "=") (identifier "piVar7")) (; ";")) (expression_statement "pcStack_c4 = unaff_s5;" (assignment_expression "pcStack_c4 = unaff_s5" (identifier "pcStack_c4") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "uStack_c0 = uVar17;" (assignment_expression "uStack_c0 = uVar17" (identifier "uStack_c0") (= "=") (identifier "uVar17")) (; ";")) (expression_statement "puStack_bc = unaff_s7;" (assignment_expression "puStack_bc = unaff_s7" (identifier "puStack_bc") (= "=") (identifier "unaff_s7")) (; ";")) (expression_statement "pcStack_b8 = unaff_s8;" (assignment_expression "pcStack_b8 = unaff_s8" (identifier "pcStack_b8") (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "pcStack_b4 = pcVar24;" (assignment_expression "pcStack_b4 = pcVar24" (identifier "pcStack_b4") (= "=") (identifier "pcVar24")) (; ";")) (if_statement "if (pcStack_9c == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }" (if "if") (parenthesized_expression "(pcStack_9c == (code *)0x9)" (( "(") (binary_expression "pcStack_9c == (code *)0x9" (identifier "pcStack_9c") (== "==") (cast_expression "(code *)0x9" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9"))) () ")")) (compound_statement "{\n                pcVar4 = *(code **)(pcVar21 + 0x3d8408);\n                if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }\n                return pcVar4;\n              }" ({ "{") (expression_statement "pcVar4 = *(code **)(pcVar21 + 0x3d8408);" (assignment_expression "pcVar4 = *(code **)(pcVar21 + 0x3d8408)" (identifier "pcVar4") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x3d8408)" (* "*") (cast_expression "(code **)(pcVar21 + 0x3d8408)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x3d8408)" (( "(") (binary_expression "pcVar21 + 0x3d8408" (identifier "pcVar21") (+ "+") (number_literal "0x3d8408")) () ")"))))) (; ";")) (if_statement "if (pcStack_94 != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }" (if "if") (parenthesized_expression "(pcStack_94 != (code *)0x0)" (( "(") (binary_expression "pcStack_94 != (code *)0x0" (identifier "pcStack_94") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);\n                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);\n                  do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);\n                }" ({ "{") (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" (identifier "pcVar24") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar23 = *(code **)(pcVar21 + 0x3d84e0);" (assignment_expression "pcVar23 = *(code **)(pcVar21 + 0x3d84e0)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x3d84e0)" (* "*") (cast_expression "(code **)(pcVar21 + 0x3d84e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x3d84e0)" (( "(") (binary_expression "pcVar21 + 0x3d84e0" (identifier "pcVar21") (+ "+") (number_literal "0x3d84e0")) () ")"))))) (; ";")) (expression_statement "pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;" (assignment_expression "pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864" (identifier "pcStack_f0") (= "=") (binary_expression "*(code **)(pcVar21 + 0x3d8408) + 0x1864" (pointer_expression "*(code **)(pcVar21 + 0x3d8408)" (* "*") (cast_expression "(code **)(pcVar21 + 0x3d8408)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x3d8408)" (( "(") (binary_expression "pcVar21 + 0x3d8408" (identifier "pcVar21") (+ "+") (number_literal "0x3d8408")) () ")")))) (+ "+") (number_literal "0x1864"))) (; ";")) (expression_statement "puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);" (assignment_expression "puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448)" (identifier "puVar19") (= "=") (cast_expression "(uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar21 + 0x3d7c38) + 0x5448)" (( "(") (binary_expression "*(int *)(pcVar21 + 0x3d7c38) + 0x5448" (pointer_expression "*(int *)(pcVar21 + 0x3d7c38)" (* "*") (cast_expression "(int *)(pcVar21 + 0x3d7c38)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0x3d7c38)" (( "(") (binary_expression "pcVar21 + 0x3d7c38" (identifier "pcVar21") (+ "+") (number_literal "0x3d7c38")) () ")")))) (+ "+") (number_literal "0x5448")) () ")")))) (; ";")) (do_statement "do {\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  } while (pcStack_94 != pcVar24);" (do "do") (compound_statement "{\n                    if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }\nLAB_000e9990:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 8;\n                    pcVar4 = pcStack_94;\n                  }" ({ "{") (if_statement "if (uVar6 == 0) {\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);\n                      pcVar14 = (code *)((uint)pcVar21 >> 8);\n                      if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;\n                    }" ({ "{") (labeled_statement "LAB_000e99a8:\n                      pcVar21 = *(code **)(pcVar15 + 4);" (statement_identifier "LAB_000e99a8") (: ":") (expression_statement "pcVar21 = *(code **)(pcVar15 + 4);" (assignment_expression "pcVar21 = *(code **)(pcVar15 + 4)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar15 + 4)" (* "*") (cast_expression "(code **)(pcVar15 + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 4)" (( "(") (binary_expression "pcVar15 + 4" (identifier "pcVar15") (+ "+") (number_literal "4")) () ")"))))) (; ";"))) (expression_statement "pcVar14 = (code *)((uint)pcVar21 >> 8);" (assignment_expression "pcVar14 = (code *)((uint)pcVar21 >> 8)" (identifier "pcVar14") (= "=") (cast_expression "(code *)((uint)pcVar21 >> 8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)pcVar21 >> 8)" (( "(") (binary_expression "(uint)pcVar21 >> 8" (cast_expression "(uint)pcVar21" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar21")) (>> ">>") (number_literal "8")) () ")")))) (; ";")) (if_statement "if (pcVar14 < pcStack_88) {\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }\n                      else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" (if "if") (parenthesized_expression "(pcVar14 < pcStack_88)" (( "(") (binary_expression "pcVar14 < pcStack_88" (identifier "pcVar14") (< "<") (identifier "pcStack_88")) () ")")) (compound_statement "{\n                        iVar2 = (int)pcVar14 * 0x10;\n                        pcVar4 = pcStack_100;\n                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;\n                        pcVar16 = pcVar22 + iVar2;\n                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        uVar17 = (uint)pcVar21 & 0xff;\n                        pcVar4 = pcStack_100;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }\n                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);\n                        (*pcVar4)(pcVar20,&uStack_f8);\n                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" ({ "{") (expression_statement "iVar2 = (int)pcVar14 * 0x10;" (assignment_expression "iVar2 = (int)pcVar14 * 0x10" (identifier "iVar2") (= "=") (binary_expression "(int)pcVar14 * 0x10" (cast_expression "(int)pcVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar14")) (* "*") (number_literal "0x10"))) (; ";")) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" (identifier "pcVar4") (= "=") (identifier "pcStack_100")) (; ";")) (if_statement "if (pcVar22 == (code *)0x0) goto LAB_000e9d24;" (if "if") (parenthesized_expression "(pcVar22 == (code *)0x0)" (( "(") (binary_expression "pcVar22 == (code *)0x0" (identifier "pcVar22") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000e9d24;" (goto "goto") (statement_identifier "LAB_000e9d24") (; ";"))) (expression_statement "pcVar16 = pcVar22 + iVar2;" (assignment_expression "pcVar16 = pcVar22 + iVar2" (identifier "pcVar16") (= "=") (binary_expression "pcVar22 + iVar2" (identifier "pcVar22") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);" (assignment_expression "pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe)" (identifier "pcVar25") (= "=") (binary_expression "(code *)(uint)*(ushort *)(pcVar16 + 0xe)" (cast_expression "(code *)(uint)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")"))) (* "*") (cast_expression "(ushort *)(pcVar16 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xe)" (( "(") (binary_expression "pcVar16 + 0xe" (identifier "pcVar16") (+ "+") (number_literal "0xe")) () ")"))))) (; ";")) (if_statement "if (pcVar25 < (code *)0xff00) {\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }" (if "if") (parenthesized_expression "(pcVar25 < (code *)0xff00)" (( "(") (binary_expression "pcVar25 < (code *)0xff00" (identifier "pcVar25") (< "<") (cast_expression "(code *)0xff00" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xff00"))) () ")")) (compound_statement "{\nLAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;\n                          pcVar4 = pcStack_100;\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;\n                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;\n                          cVar1 = pcVar16[0xc];\n                        }" ({ "{") (labeled_statement "LAB_000e9ad8:\n                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;" (statement_identifier "LAB_000e9ad8") (: ":") (if_statement "if (pcVar25 == (code *)0x0) goto LAB_000e99e8;" (if "if") (parenthesized_expression "(pcVar25 == (code *)0x0)" (( "(") (binary_expression "pcVar25 == (code *)0x0" (identifier "pcVar25") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000e99e8;" (goto "goto") (statement_identifier "LAB_000e99e8") (; ";")))) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" (identifier "pcVar4") (= "=") (identifier "pcStack_100")) (; ";")) (if_statement "if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9d08;" (if "if") (parenthesized_expression "((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)" (( "(") (binary_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" (identifier "piVar13") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "pcVar25")) () ")")) (goto_statement "goto LAB_000e9d08;" (goto "goto") (statement_identifier "LAB_000e9d08") (; ";"))) (if_statement "if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;" (if "if") (parenthesized_expression "(*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + (int)pcVar25 * 4)" (* "*") (cast_expression "(int *)(piVar13[0xe] + (int)pcVar25 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xe] + (int)pcVar25 * 4)" (( "(") (binary_expression "piVar13[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar25")) (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e9a0c;" (goto "goto") (statement_identifier "LAB_000e9a0c") (; ";"))) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar16[0xc]" (identifier "pcVar16") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }" (else "else") (compound_statement "{\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }\nLAB_000e99e8:\n                          cVar1 = pcVar16[0xc];\n                        }" ({ "{") (if_statement "if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }" (if "if") (parenthesized_expression "(pcVar25 == (code *)0xffff)" (( "(") (binary_expression "pcVar25 == (code *)0xffff" (identifier "pcVar25") (== "==") (cast_expression "(code *)0xffff" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffff"))) () ")")) (compound_statement "{\n                            iVar11 = piVar13[0xc];\n                            pcStack_ec = pcVar21;\n                            pcStack_e8 = pcVar14;\n                            iStack_e4 = iVar2;\n                            pcStack_e0 = pcVar16;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_ec;\n                            pcStack_ec = pcStack_e8;\n                            pcVar4 = pcStack_e8;\n                            pcStack_e8 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);\n                            pcVar21 = pcStack_e8;\n                            pcVar14 = pcStack_ec;\n                            iVar2 = iStack_e4;\n                            pcVar16 = pcStack_e0;\n                            goto LAB_000e9ad8;\n                          }" ({ "{") (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" (identifier "iVar11") (= "=") (subscript_expression "piVar13[0xc]" (identifier "piVar13") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "pcStack_ec = pcVar21;" (assignment_expression "pcStack_ec = pcVar21" (identifier "pcStack_ec") (= "=") (identifier "pcVar21")) (; ";")) (expression_statement "pcStack_e8 = pcVar14;" (assignment_expression "pcStack_e8 = pcVar14" (identifier "pcStack_e8") (= "=") (identifier "pcVar14")) (; ";")) (expression_statement "iStack_e4 = iVar2;" (assignment_expression "iStack_e4 = iVar2" (identifier "iStack_e4") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "pcStack_e0 = pcVar16;" (assignment_expression "pcStack_e0 = pcVar16" (identifier "pcStack_e0") (= "=") (identifier "pcVar16")) (; ";")) (if_statement "if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);\n                              piVar13[0xc] = iVar11;\n                            }" ({ "{") (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar13 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar13 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar13 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x6c)" (( "(") (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar13,&uStack_f8)" (( "(") (identifier "piVar13") (, ",") (pointer_expression "&uStack_f8" (& "&") (identifier "uStack_f8")) () ")")))) (; ";")) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" (identifier "piVar13") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar11")) (; ";")) (} "}"))) (expression_statement "uVar17 = (uint)pcStack_ec;" (assignment_expression "uVar17 = (uint)pcStack_ec" (identifier "uVar17") (= "=") (cast_expression "(uint)pcStack_ec" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcStack_ec"))) (; ";")) (expression_statement "pcStack_ec = pcStack_e8;" (assignment_expression "pcStack_ec = pcStack_e8" (identifier "pcStack_ec") (= "=") (identifier "pcStack_e8")) (; ";")) (expression_statement "pcVar4 = pcStack_e8;" (assignment_expression "pcVar4 = pcStack_e8" (identifier "pcVar4") (= "=") (identifier "pcStack_e8")) (; ";")) (expression_statement "pcStack_e8 = (code *)uVar17;" (assignment_expression "pcStack_e8 = (code *)uVar17" (identifier "pcStack_e8") (= "=") (cast_expression "(code *)uVar17" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar17"))) (; ";")) (expression_statement "pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4);" (assignment_expression "pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4)" (identifier "pcVar25") (= "=") (cast_expression "(code *)(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_100 + -0x7790))\n                                                        (iVar11,piVar13,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_100 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_100 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_100 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_100 + -0x7790)" (( "(") (binary_expression "pcStack_100 + -0x7790" (identifier "pcStack_100") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar11,piVar13,pcVar4)" (( "(") (identifier "iVar11") (, ",") (identifier "piVar13") (, ",") (identifier "pcVar4") () ")"))))) (; ";")) (expression_statement "pcVar21 = pcStack_e8;" (assignment_expression "pcVar21 = pcStack_e8" (identifier "pcVar21") (= "=") (identifier "pcStack_e8")) (; ";")) (expression_statement "pcVar14 = pcStack_ec;" (assignment_expression "pcVar14 = pcStack_ec" (identifier "pcVar14") (= "=") (identifier "pcStack_ec")) (; ";")) (expression_statement "iVar2 = iStack_e4;" (assignment_expression "iVar2 = iStack_e4" (identifier "iVar2") (= "=") (identifier "iStack_e4")) (; ";")) (expression_statement "pcVar16 = pcStack_e0;" (assignment_expression "pcVar16 = pcStack_e0" (identifier "pcVar16") (= "=") (identifier "pcStack_e0")) (; ";")) (goto_statement "goto LAB_000e9ad8;" (goto "goto") (statement_identifier "LAB_000e9ad8") (; ";")) (} "}"))) (labeled_statement "LAB_000e99e8:\n                          cVar1 = pcVar16[0xc];" (statement_identifier "LAB_000e99e8") (: ":") (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar16[0xc]" (identifier "pcVar16") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (} "}")))) (expression_statement "uVar17 = (uint)pcVar21 & 0xff;" (assignment_expression "uVar17 = (uint)pcVar21 & 0xff" (identifier "uVar17") (= "=") (binary_expression "(uint)pcVar21 & 0xff" (cast_expression "(uint)pcVar21" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar21")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" (identifier "pcVar4") (= "=") (identifier "pcStack_100")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }\n                          goto LAB_000e9cb4;\n                        }" ({ "{") (if_statement "if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;" (if "if") (parenthesized_expression "(pcVar14 == (code *)0x0 && uVar17 == 0)" (( "(") (binary_expression "pcVar14 == (code *)0x0 && uVar17 == 0" (binary_expression "pcVar14 == (code *)0x0" (identifier "pcVar14") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (&& "&&") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0"))) () ")")) (goto_statement "goto LAB_000e9a0c;" (goto "goto") (statement_identifier "LAB_000e9a0c") (; ";"))) (expression_statement "piVar7 = (int *)(piVar13[0x3a] + iVar2);" (assignment_expression "piVar7 = (int *)(piVar13[0x3a] + iVar2)" (identifier "piVar7") (= "=") (cast_expression "(int *)(piVar13[0x3a] + iVar2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0x3a] + iVar2)" (( "(") (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" (identifier "piVar13") ([ "[") (number_literal "0x3a") (] "]")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (if_statement "if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }" (if "if") (parenthesized_expression "(pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4))" (( "(") (binary_expression "pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)" (identifier "pcVar14") (< "<") (cast_expression "(code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 4)" (( "(") (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 4" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" (identifier "piVar13") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar13[0x3a]" (identifier "piVar13") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "4")) () ")")))) () ")")) (compound_statement "{\n                            iVar2 = *piVar7;\n                            if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }\n                            *piVar7 = -2;\n                            goto LAB_000e9970;\n                          }" ({ "{") (expression_statement "iVar2 = *piVar7;" (assignment_expression "iVar2 = *piVar7" (identifier "iVar2") (= "=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) (; ";")) (if_statement "if (iVar2 != 0) {\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000e981c;\n                            }" ({ "{") (expression_statement "uVar17 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar17 = *(uint *)(pcStack_100 + -0x77f0)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcStack_100 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_100 + -0x77f0)" (( "(") (binary_expression "pcStack_100 + -0x77f0" (identifier "pcStack_100") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = (code *)0x9;" (assignment_expression "pcVar4 = (code *)0x9" (identifier "pcVar4") (= "=") (cast_expression "(code *)0x9" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9"))) (; ";")) (if_statement "if (iVar2 != -2) goto LAB_000e981c;" (if "if") (parenthesized_expression "(iVar2 != -2)" (( "(") (binary_expression "iVar2 != -2" (identifier "iVar2") (!= "!=") (number_literal "-2")) () ")")) (goto_statement "goto LAB_000e981c;" (goto "goto") (statement_identifier "LAB_000e981c") (; ";"))) (} "}"))) (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (= "=") (number_literal "-2")) (; ";")) (goto_statement "goto LAB_000e9970;" (goto "goto") (statement_identifier "LAB_000e9970") (; ";")) (} "}"))) (goto_statement "goto LAB_000e9cb4;" (goto "goto") (statement_identifier "LAB_000e9cb4") (; ";")) (} "}"))) (if_statement "if (uVar17 != 4) {\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }" (if "if") (parenthesized_expression "(uVar17 != 4)" (( "(") (binary_expression "uVar17 != 4" (identifier "uVar17") (!= "!=") (number_literal "4")) () ")")) (compound_statement "{\n                          pcStack_ec = pcVar25;\n                          uVar17 = (*pcStack_f0)(uVar17,piVar13);\n                          pcVar4 = pcStack_100;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000e9b48_caseD_3;\n                        }" ({ "{") (expression_statement "pcStack_ec = pcVar25;" (assignment_expression "pcStack_ec = pcVar25" (identifier "pcStack_ec") (= "=") (identifier "pcVar25")) (; ";")) (expression_statement "uVar17 = (*pcStack_f0)(uVar17,piVar13);" (assignment_expression "uVar17 = (*pcStack_f0)(uVar17,piVar13)" (identifier "uVar17") (= "=") (call_expression "(*pcStack_f0)(uVar17,piVar13)" (parenthesized_expression "(*pcStack_f0)" (( "(") (pointer_expression "*pcStack_f0" (* "*") (identifier "pcStack_f0")) () ")")) (argument_list "(uVar17,piVar13)" (( "(") (identifier "uVar17") (, ",") (identifier "piVar13") () ")")))) (; ";")) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" (identifier "pcVar4") (= "=") (identifier "pcStack_100")) (; ";")) (if_statement "if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" (if "if") (parenthesized_expression "(uVar17 < 9)" (( "(") (binary_expression "uVar17 < 9" (identifier "uVar17") (< "<") (number_literal "9")) () ")")) (compound_statement "{\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" ({ "{") (expression_statement "pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();" (assignment_expression "pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))()" (identifier "pcVar4") (= "=") (cast_expression "(code *)(*(pcStack_100 + puVar19[uVar17]))()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(pcStack_100 + puVar19[uVar17]))()" (parenthesized_expression "(*(pcStack_100 + puVar19[uVar17]))" (( "(") (pointer_expression "*(pcStack_100 + puVar19[uVar17])" (* "*") (parenthesized_expression "(pcStack_100 + puVar19[uVar17])" (( "(") (binary_expression "pcStack_100 + puVar19[uVar17]" (identifier "pcStack_100") (+ "+") (subscript_expression "puVar19[uVar17]" (identifier "puVar19") ([ "[") (identifier "uVar17") (] "]"))) () ")"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (goto_statement "goto switchD_000e9b48_caseD_3;" (goto "goto") (statement_identifier "switchD_000e9b48_caseD_3") (; ";")) (} "}"))) (if_statement "if (*(code **)(*piVar13 + 0x60) == pcVar23) {\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }\n                        else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }" (if "if") (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcVar23)" (( "(") (binary_expression "*(code **)(*piVar13 + 0x60) == pcVar23" (pointer_expression "*(code **)(*piVar13 + 0x60)" (* "*") (cast_expression "(code **)(*piVar13 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x60)" (( "(") (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcVar23")) () ")")) (compound_statement "{\n                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;\n                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);\n                          pcStack_ec = pcVar3;\n                        }" ({ "{") (if_statement "if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)\n                          goto LAB_000e9cec;" (if "if") (parenthesized_expression "((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)" (( "(") (binary_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" (identifier "piVar13") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "pcVar25")) () ")")) (goto_statement "goto LAB_000e9cec;" (goto "goto") (statement_identifier "LAB_000e9cec") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar13[0xe] + (int)pcVar25 * 4)" (* "*") (cast_expression "(int *)(piVar13[0xe] + (int)pcVar25 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xe] + (int)pcVar25 * 4)" (( "(") (binary_expression "piVar13[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar25")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "pcStack_ec = pcVar3;" (assignment_expression "pcStack_ec = pcVar3" (identifier "pcStack_ec") (= "=") (identifier "pcVar3")) (; ";")) (} "}")) (else_clause "else {\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }" (else "else") (compound_statement "{\n                          pcStack_ec = pcVar3;\n                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);\n                        }" ({ "{") (expression_statement "pcStack_ec = pcVar3;" (assignment_expression "pcStack_ec = pcVar3" (identifier "pcStack_ec") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,pcVar25)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar13 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar13 + 0x60)" (* "*") (cast_expression "(code **)(*piVar13 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x60)" (( "(") (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar13,pcVar25)" (( "(") (identifier "piVar13") (, ",") (identifier "pcVar25") () ")")))) (; ";")) (} "}")))) (expression_statement "pcVar4 = *(code **)(pcStack_100 + -0x76e4);" (assignment_expression "pcVar4 = *(code **)(pcStack_100 + -0x76e4)" (identifier "pcVar4") (= "=") (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" (* "*") (cast_expression "(code **)(pcStack_100 + -0x76e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_100 + -0x76e4)" (( "(") (binary_expression "pcStack_100 + -0x76e4" (identifier "pcStack_100") (+ "+") (number_literal "-0x76e4")) () ")"))))) (; ";")) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_)" (identifier "uStack_f8") (= "=") (call_expression "CONCAT13((char)pcStack_ec,uStack_f8._1_3_)" (identifier "CONCAT13") (argument_list "((char)pcStack_ec,uStack_f8._1_3_)" (( "(") (cast_expression "(char)pcStack_ec" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "pcStack_ec")) (, ",") (field_expression "uStack_f8._1_3_" (identifier "uStack_f8") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*pcVar4)(pcVar20,&uStack_f8);" (call_expression "(*pcVar4)(pcVar20,&uStack_f8)" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "(pcVar20,&uStack_f8)" (( "(") (identifier "pcVar20") (, ",") (pointer_expression "&uStack_f8" (& "&") (identifier "uStack_f8")) () ")"))) (; ";")) (if_statement "if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;" (if "if") (parenthesized_expression "(pcStack_ec == (code *)&DAT_00000008)" (( "(") (binary_expression "pcStack_ec == (code *)&DAT_00000008" (identifier "pcStack_ec") (== "==") (cast_expression "(code *)&DAT_00000008" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_00000008" (& "&") (identifier "DAT_00000008")))) () ")")) (goto_statement "goto LAB_000e9990;" (goto "goto") (statement_identifier "LAB_000e9990") (; ";"))) (expression_statement "iVar2 = *(int *)(pcVar20 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar20 + 0xc)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar20 + 0xc)" (* "*") (cast_expression "(int *)(pcVar20 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0xc)" (( "(") (binary_expression "pcVar20 + 0xc" (identifier "pcVar20") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" (else "else") (compound_statement "{\nLAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;\n                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                        iVar2 = *(int *)(pcVar20 + 0xc);\n                      }" ({ "{") (labeled_statement "LAB_000e9970:\n                        uStack_f8 = uStack_f8 & 0xffffff;" (statement_identifier "LAB_000e9970") (: ":") (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" (identifier "uStack_f8") (= "=") (binary_expression "uStack_f8 & 0xffffff" (identifier "uStack_f8") (& "&") (number_literal "0xffffff"))) (; ";"))) (expression_statement "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);" (call_expression "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e4))" (( "(") (pointer_expression "**(code **)(pcStack_100 + -0x76e4)" (* "*") (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" (* "*") (cast_expression "(code **)(pcStack_100 + -0x76e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_100 + -0x76e4)" (( "(") (binary_expression "pcStack_100 + -0x76e4" (identifier "pcStack_100") (+ "+") (number_literal "-0x76e4")) () ")"))))) () ")")) (argument_list "(pcVar20,&uStack_f8)" (( "(") (identifier "pcVar20") (, ",") (pointer_expression "&uStack_f8" (& "&") (identifier "uStack_f8")) () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar20 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar20 + 0xc)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar20 + 0xc)" (* "*") (cast_expression "(int *)(pcVar20 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0xc)" (( "(") (binary_expression "pcVar20 + 0xc" (identifier "pcVar20") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(int *)(pcVar20 + 0xc) = iVar2 + 1;" (assignment_expression "*(int *)(pcVar20 + 0xc) = iVar2 + 1" (pointer_expression "*(int *)(pcVar20 + 0xc)" (* "*") (cast_expression "(int *)(pcVar20 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0xc)" (( "(") (binary_expression "pcVar20 + 0xc" (identifier "pcVar20") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "iVar2 + 1" (identifier "iVar2") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }" (else "else") (compound_statement "{\n                      iStack_104 = *(int *)pcVar15;\n                      uStack_108 = 0;\n                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                      if (iVar2 != 0) goto LAB_000e99a8;\nLAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);\n                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);\n                    }" ({ "{") (expression_statement "iStack_104 = *(int *)pcVar15;" (assignment_expression "iStack_104 = *(int *)pcVar15" (identifier "iStack_104") (= "=") (pointer_expression "*(int *)pcVar15" (* "*") (cast_expression "(int *)pcVar15" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15")))) (; ";")) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" (identifier "uStack_108") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);" (assignment_expression "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_100 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_100 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_100 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_100 + -0x76e0)" (( "(") (binary_expression "pcStack_100 + -0x76e0" (identifier "pcStack_100") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(uStack_90,piVar13,uStack_a0)" (( "(") (identifier "uStack_90") (, ",") (identifier "piVar13") (, ",") (identifier "uStack_a0") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) goto LAB_000e99a8;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e99a8;" (goto "goto") (statement_identifier "LAB_000e99a8") (; ";"))) (labeled_statement "LAB_000e9a0c:\n                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);" (statement_identifier "LAB_000e9a0c") (: ":") (expression_statement "uStack_f8 = CONCAT13(8,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13(8,uStack_f8._1_3_)" (identifier "uStack_f8") (= "=") (call_expression "CONCAT13(8,uStack_f8._1_3_)" (identifier "CONCAT13") (argument_list "(8,uStack_f8._1_3_)" (( "(") (number_literal "8") (, ",") (field_expression "uStack_f8._1_3_" (identifier "uStack_f8") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);" (call_expression "(**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e4))" (( "(") (pointer_expression "**(code **)(pcStack_100 + -0x76e4)" (* "*") (pointer_expression "*(code **)(pcStack_100 + -0x76e4)" (* "*") (cast_expression "(code **)(pcStack_100 + -0x76e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_100 + -0x76e4)" (( "(") (binary_expression "pcStack_100 + -0x76e4" (identifier "pcStack_100") (+ "+") (number_literal "-0x76e4")) () ")"))))) () ")")) (argument_list "(pcVar20,&uStack_f8)" (( "(") (identifier "pcVar20") (, ",") (pointer_expression "&uStack_f8" (& "&") (identifier "uStack_f8")) () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_000e9990:\n                    pcVar24 = pcVar24 + 1;" (statement_identifier "LAB_000e9990") (: ":") (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" (identifier "pcVar24") (= "=") (binary_expression "pcVar24 + 1" (identifier "pcVar24") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "pcVar15 = pcVar15 + 8;" (assignment_expression "pcVar15 = pcVar15 + 8" (identifier "pcVar15") (= "=") (binary_expression "pcVar15 + 8" (identifier "pcVar15") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "pcVar4 = pcStack_94;" (assignment_expression "pcVar4 = pcStack_94" (identifier "pcVar4") (= "=") (identifier "pcStack_94")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcStack_94 != pcVar24)" (( "(") (binary_expression "pcStack_94 != pcVar24" (identifier "pcStack_94") (!= "!=") (identifier "pcVar24")) () ")")) (; ";")) (} "}"))) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (expression_statement "pcVar24 = unaff_s2;" (assignment_expression "pcVar24 = unaff_s2" (identifier "pcVar24") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "puVar19 = unaff_s7;" (assignment_expression "puVar19 = unaff_s7" (identifier "puVar19") (= "=") (identifier "unaff_s7")) (; ";")) (expression_statement "pcVar23 = unaff_s8;" (assignment_expression "pcVar23 = unaff_s8" (identifier "pcVar23") (= "=") (identifier "unaff_s8")) (; ";")) (if_statement "if (pcStack_9c == (code *)&DAT_00000004) {\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }" (if "if") (parenthesized_expression "(pcStack_9c == (code *)&DAT_00000004)" (( "(") (binary_expression "pcStack_9c == (code *)&DAT_00000004" (identifier "pcStack_9c") (== "==") (cast_expression "(code *)&DAT_00000004" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_00000004" (& "&") (identifier "DAT_00000004")))) () ")")) (compound_statement "{\n                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);\n                if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar21 + 0x3d8518);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_f8;\nLAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }\n                pcVar4 = pcStack_100;\n                pcVar14 = *(code **)(pcVar15 + 4);\n                pcVar21 = (code *)((uint)pcVar14 >> 8);\n                if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }\n                iVar2 = (int)pcVar21 * 0x10;\n                if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }\n                (**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);\nLAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);\n              }" ({ "{") (expression_statement "pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);" (assignment_expression "pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0)" (identifier "pcStack_f0") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x3d84e0)" (* "*") (cast_expression "(code **)(pcVar21 + 0x3d84e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x3d84e0)" (( "(") (binary_expression "pcVar21 + 0x3d84e0" (identifier "pcVar21") (+ "+") (number_literal "0x3d84e0")) () ")"))))) (; ";")) (if_statement "if (pcStack_94 == (code *)0x0) {\n                  return pcStack_f0;\n                }" (if "if") (parenthesized_expression "(pcStack_94 == (code *)0x0)" (( "(") (binary_expression "pcStack_94 == (code *)0x0" (identifier "pcStack_94") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  return pcStack_f0;\n                }" ({ "{") (return_statement "return pcStack_f0;" (return "return") (identifier "pcStack_f0") (; ";")) (} "}"))) (expression_statement "pcVar3 = (code *)0x0;" (assignment_expression "pcVar3 = (code *)0x0" (identifier "pcVar3") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar24 = *(code **)(pcVar21 + 0x3d8518);" (assignment_expression "pcVar24 = *(code **)(pcVar21 + 0x3d8518)" (identifier "pcVar24") (= "=") (pointer_expression "*(code **)(pcVar21 + 0x3d8518)" (* "*") (cast_expression "(code **)(pcVar21 + 0x3d8518)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0x3d8518)" (( "(") (binary_expression "pcVar21 + 0x3d8518" (identifier "pcVar21") (+ "+") (number_literal "0x3d8518")) () ")"))))) (; ";")) (expression_statement "pcVar23 = (code *)&DAT_00000008;" (assignment_expression "pcVar23 = (code *)&DAT_00000008" (identifier "pcVar23") (= "=") (cast_expression "(code *)&DAT_00000008" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_00000008" (& "&") (identifier "DAT_00000008")))) (; ";")) (expression_statement "puVar19 = &uStack_f8;" (assignment_expression "puVar19 = &uStack_f8" (identifier "puVar19") (= "=") (pointer_expression "&uStack_f8" (& "&") (identifier "uStack_f8"))) (; ";")) (labeled_statement "LAB_000e96fc:\n                while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }" (statement_identifier "LAB_000e96fc") (: ":") (while_statement "while (uVar6 != 0) {\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }" (while "while") (parenthesized_expression "(uVar6 != 0)" (( "(") (binary_expression "uVar6 != 0" (identifier "uVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  iStack_104 = *(int *)pcVar15;\n                  uStack_108 = 0;\n                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);\n                  if (iVar2 != 0) break;\nLAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);\n                  (*pcVar24)(pcVar20,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                }" ({ "{") (expression_statement "iStack_104 = *(int *)pcVar15;" (assignment_expression "iStack_104 = *(int *)pcVar15" (identifier "iStack_104") (= "=") (pointer_expression "*(int *)pcVar15" (* "*") (cast_expression "(int *)pcVar15" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15")))) (; ";")) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" (identifier "uStack_108") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);" (assignment_expression "iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_100 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_100 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_100 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_100 + -0x76e0)" (( "(") (binary_expression "pcStack_100 + -0x76e0" (identifier "pcStack_100") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(uStack_90,piVar13,uStack_a0)" (( "(") (identifier "uStack_90") (, ",") (identifier "piVar13") (, ",") (identifier "uStack_a0") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) break;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_000e9768:\n                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);" (statement_identifier "LAB_000e9768") (: ":") (expression_statement "uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_)" (identifier "uStack_f8") (= "=") (call_expression "CONCAT13((char)pcVar23,uStack_f8._1_3_)" (identifier "CONCAT13") (argument_list "((char)pcVar23,uStack_f8._1_3_)" (( "(") (cast_expression "(char)pcVar23" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "pcVar23")) (, ",") (field_expression "uStack_f8._1_3_" (identifier "uStack_f8") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar20,puVar19)" (( "(") (identifier "pcVar20") (, ",") (identifier "puVar19") () ")"))) (; ";")) (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" (identifier "pcVar3") (= "=") (binary_expression "pcVar3 + 1" (identifier "pcVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar15 = pcVar15 + 0xc;" (assignment_expression "pcVar15 = pcVar15 + 0xc" (identifier "pcVar15") (= "=") (binary_expression "pcVar15 + 0xc" (identifier "pcVar15") (+ "+") (number_literal "0xc"))) (; ";")) (if_statement "if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }" (if "if") (parenthesized_expression "(pcStack_94 == pcVar3)" (( "(") (binary_expression "pcStack_94 == pcVar3" (identifier "pcStack_94") (== "==") (identifier "pcVar3")) () ")")) (compound_statement "{\n                    return pcStack_94;\n                  }" ({ "{") (return_statement "return pcStack_94;" (return "return") (identifier "pcStack_94") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" (identifier "pcVar4") (= "=") (identifier "pcStack_100")) (; ";")) (expression_statement "pcVar14 = *(code **)(pcVar15 + 4);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 4)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar15 + 4)" (* "*") (cast_expression "(code **)(pcVar15 + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 4)" (( "(") (binary_expression "pcVar15 + 4" (identifier "pcVar15") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "pcVar21 = (code *)((uint)pcVar14 >> 8);" (assignment_expression "pcVar21 = (code *)((uint)pcVar14 >> 8)" (identifier "pcVar21") (= "=") (cast_expression "(code *)((uint)pcVar14 >> 8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)pcVar14 >> 8)" (( "(") (binary_expression "(uint)pcVar14 >> 8" (cast_expression "(uint)pcVar14" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar14")) (>> ">>") (number_literal "8")) () ")")))) (; ";")) (if_statement "if (pcStack_88 <= pcVar21) {\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }" (if "if") (parenthesized_expression "(pcStack_88 <= pcVar21)" (( "(") (binary_expression "pcStack_88 <= pcVar21" (identifier "pcStack_88") (<= "<=") (identifier "pcVar21")) () ")")) (compound_statement "{\n                  uStack_f8 = uStack_f8 & 0xffffff;\n                  (*pcVar24)(pcVar20,puVar19);\nLAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0xc;\n                  if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }\n                  goto LAB_000e96fc;\n                }" ({ "{") (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" (identifier "uStack_f8") (= "=") (binary_expression "uStack_f8 & 0xffffff" (identifier "uStack_f8") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar20,puVar19)" (( "(") (identifier "pcVar20") (, ",") (identifier "puVar19") () ")"))) (; ";")) (labeled_statement "LAB_000e96e0:\n                  pcVar3 = pcVar3 + 1;" (statement_identifier "LAB_000e96e0") (: ":") (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" (identifier "pcVar3") (= "=") (binary_expression "pcVar3 + 1" (identifier "pcVar3") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "*(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;" (assignment_expression "*(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1" (pointer_expression "*(int *)(pcVar20 + 0xc)" (* "*") (cast_expression "(int *)(pcVar20 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0xc)" (( "(") (binary_expression "pcVar20 + 0xc" (identifier "pcVar20") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "*(int *)(pcVar20 + 0xc) + 1" (pointer_expression "*(int *)(pcVar20 + 0xc)" (* "*") (cast_expression "(int *)(pcVar20 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar20 + 0xc)" (( "(") (binary_expression "pcVar20 + 0xc" (identifier "pcVar20") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar15 = pcVar15 + 0xc;" (assignment_expression "pcVar15 = pcVar15 + 0xc" (identifier "pcVar15") (= "=") (binary_expression "pcVar15 + 0xc" (identifier "pcVar15") (+ "+") (number_literal "0xc"))) (; ";")) (if_statement "if (pcStack_94 == pcVar3) {\n                    return pcStack_94;\n                  }" (if "if") (parenthesized_expression "(pcStack_94 == pcVar3)" (( "(") (binary_expression "pcStack_94 == pcVar3" (identifier "pcStack_94") (== "==") (identifier "pcVar3")) () ")")) (compound_statement "{\n                    return pcStack_94;\n                  }" ({ "{") (return_statement "return pcStack_94;" (return "return") (identifier "pcStack_94") (; ";")) (} "}"))) (goto_statement "goto LAB_000e96fc;" (goto "goto") (statement_identifier "LAB_000e96fc") (; ";")) (} "}"))) (expression_statement "iVar2 = (int)pcVar21 * 0x10;" (assignment_expression "iVar2 = (int)pcVar21 * 0x10" (identifier "iVar2") (= "=") (binary_expression "(int)pcVar21 * 0x10" (cast_expression "(int)pcVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar21")) (* "*") (number_literal "0x10"))) (; ";")) (if_statement "if (pcVar22 != (code *)0x0) {\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }" (if "if") (parenthesized_expression "(pcVar22 != (code *)0x0)" (( "(") (binary_expression "pcVar22 != (code *)0x0" (identifier "pcVar22") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  pcVar16 = pcVar22 + iVar2;\n                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);\n                  if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_100;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  goto LAB_000e96e0;\n                }" ({ "{") (expression_statement "pcVar16 = pcVar22 + iVar2;" (assignment_expression "pcVar16 = pcVar22 + iVar2" (identifier "pcVar16") (= "=") (binary_expression "pcVar22 + iVar2" (identifier "pcVar22") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);" (assignment_expression "uVar17 = (uint)*(ushort *)(pcVar16 + 0xe)" (identifier "uVar17") (= "=") (binary_expression "(uint)*(ushort *)(pcVar16 + 0xe)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(ushort *)(pcVar16 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xe)" (( "(") (binary_expression "pcVar16 + 0xe" (identifier "pcVar16") (+ "+") (number_literal "0xe")) () ")"))))) (; ";")) (if_statement "if (uVar17 < 0xff00) {\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }" (if "if") (parenthesized_expression "(uVar17 < 0xff00)" (( "(") (binary_expression "uVar17 < 0xff00" (identifier "uVar17") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;\n                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);\n                    pcVar4 = pcStack_100;\n                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;\n                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;\n                    cVar1 = pcVar16[0xc];\n                  }" ({ "{") (labeled_statement "LAB_000e9898:\n                    if (uVar17 == 0) goto LAB_000e9744;" (statement_identifier "LAB_000e9898") (: ":") (if_statement "if (uVar17 == 0) goto LAB_000e9744;" (if "if") (parenthesized_expression "(uVar17 == 0)" (( "(") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e9744;" (goto "goto") (statement_identifier "LAB_000e9744") (; ";")))) (expression_statement "uVar10 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcStack_100 + -0x77f0)" (identifier "uVar10") (= "=") (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcStack_100 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_100 + -0x77f0)" (( "(") (binary_expression "pcStack_100 + -0x77f0" (identifier "pcStack_100") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" (identifier "pcVar4") (= "=") (identifier "pcStack_100")) (; ";")) (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;" (if "if") (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17)" (( "(") (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" (identifier "piVar13") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar17")) () ")")) (goto_statement "goto LAB_000e9d0c;" (goto "goto") (statement_identifier "LAB_000e9d0c") (; ";"))) (if_statement "if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;" (if "if") (parenthesized_expression "(*(int *)(piVar13[0xe] + uVar17 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar13[0xe] + uVar17 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + uVar17 * 4)" (* "*") (cast_expression "(int *)(piVar13[0xe] + uVar17 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xe] + uVar17 * 4)" (( "(") (binary_expression "piVar13[0xe] + uVar17 * 4" (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar17 * 4" (identifier "uVar17") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e9768;" (goto "goto") (statement_identifier "LAB_000e9768") (; ";"))) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar16[0xc]" (identifier "pcVar16") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }" (else "else") (compound_statement "{\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }\nLAB_000e9744:\n                    cVar1 = pcVar16[0xc];\n                  }" ({ "{") (if_statement "if (uVar17 == 0xffff) {\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }" (if "if") (parenthesized_expression "(uVar17 == 0xffff)" (( "(") (binary_expression "uVar17 == 0xffff" (identifier "uVar17") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                      iVar11 = piVar13[0xc];\n                      pcStack_e8 = pcVar21;\n                      pcStack_ec = pcVar14;\n                      iStack_e4 = iVar2;\n                      pcStack_e0 = pcVar16;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_ec;\n                      pcStack_ec = pcStack_e8;\n                      pcVar4 = pcStack_e8;\n                      pcStack_e8 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);\n                      pcVar21 = pcStack_ec;\n                      pcVar14 = pcStack_e8;\n                      iVar2 = iStack_e4;\n                      pcVar16 = pcStack_e0;\n                      goto LAB_000e9898;\n                    }" ({ "{") (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" (identifier "iVar11") (= "=") (subscript_expression "piVar13[0xc]" (identifier "piVar13") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "pcStack_e8 = pcVar21;" (assignment_expression "pcStack_e8 = pcVar21" (identifier "pcStack_e8") (= "=") (identifier "pcVar21")) (; ";")) (expression_statement "pcStack_ec = pcVar14;" (assignment_expression "pcStack_ec = pcVar14" (identifier "pcStack_ec") (= "=") (identifier "pcVar14")) (; ";")) (expression_statement "iStack_e4 = iVar2;" (assignment_expression "iStack_e4 = iVar2" (identifier "iStack_e4") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "pcStack_e0 = pcVar16;" (assignment_expression "pcStack_e0 = pcVar16" (identifier "pcStack_e0") (= "=") (identifier "pcVar16")) (; ";")) (if_statement "if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                        piVar13[0xc] = iVar11;\n                      }" ({ "{") (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar13 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar13 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar13 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x6c)" (( "(") (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar13)" (( "(") (identifier "piVar13") () ")")))) (; ";")) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" (identifier "piVar13") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar11")) (; ";")) (} "}"))) (expression_statement "uVar17 = (uint)pcStack_ec;" (assignment_expression "uVar17 = (uint)pcStack_ec" (identifier "uVar17") (= "=") (cast_expression "(uint)pcStack_ec" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcStack_ec"))) (; ";")) (expression_statement "pcStack_ec = pcStack_e8;" (assignment_expression "pcStack_ec = pcStack_e8" (identifier "pcStack_ec") (= "=") (identifier "pcStack_e8")) (; ";")) (expression_statement "pcVar4 = pcStack_e8;" (assignment_expression "pcVar4 = pcStack_e8" (identifier "pcVar4") (= "=") (identifier "pcStack_e8")) (; ";")) (expression_statement "pcStack_e8 = (code *)uVar17;" (assignment_expression "pcStack_e8 = (code *)uVar17" (identifier "pcStack_e8") (= "=") (cast_expression "(code *)uVar17" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar17"))) (; ";")) (expression_statement "uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);" (assignment_expression "uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4)" (identifier "uVar17") (= "=") (call_expression "(**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_100 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_100 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_100 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_100 + -0x7790)" (( "(") (binary_expression "pcStack_100 + -0x7790" (identifier "pcStack_100") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar11,piVar13,pcVar4)" (( "(") (identifier "iVar11") (, ",") (identifier "piVar13") (, ",") (identifier "pcVar4") () ")")))) (; ";")) (expression_statement "pcVar21 = pcStack_ec;" (assignment_expression "pcVar21 = pcStack_ec" (identifier "pcVar21") (= "=") (identifier "pcStack_ec")) (; ";")) (expression_statement "pcVar14 = pcStack_e8;" (assignment_expression "pcVar14 = pcStack_e8" (identifier "pcVar14") (= "=") (identifier "pcStack_e8")) (; ";")) (expression_statement "iVar2 = iStack_e4;" (assignment_expression "iVar2 = iStack_e4" (identifier "iVar2") (= "=") (identifier "iStack_e4")) (; ";")) (expression_statement "pcVar16 = pcStack_e0;" (assignment_expression "pcVar16 = pcStack_e0" (identifier "pcVar16") (= "=") (identifier "pcStack_e0")) (; ";")) (goto_statement "goto LAB_000e9898;" (goto "goto") (statement_identifier "LAB_000e9898") (; ";")) (} "}"))) (labeled_statement "LAB_000e9744:\n                    cVar1 = pcVar16[0xc];" (statement_identifier "LAB_000e9744") (: ":") (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar16[0xc]" (identifier "pcVar16") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (} "}")))) (expression_statement "pcVar4 = pcStack_100;" (assignment_expression "pcVar4 = pcStack_100" (identifier "pcVar4") (= "=") (identifier "pcStack_100")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" ({ "{") (if_statement "if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" (if "if") (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcStack_f0)" (( "(") (binary_expression "*(code **)(*piVar13 + 0x60) == pcStack_f0" (pointer_expression "*(code **)(*piVar13 + 0x60)" (* "*") (cast_expression "(code **)(*piVar13 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x60)" (( "(") (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcStack_f0")) () ")")) (compound_statement "{\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;\n                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" ({ "{") (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;" (if "if") (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17)" (( "(") (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" (identifier "piVar13") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar17")) () ")")) (goto_statement "goto LAB_000e9cec;" (goto "goto") (statement_identifier "LAB_000e9cec") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar13[0xe] + uVar17 * 4)" (* "*") (cast_expression "(int *)(piVar13[0xe] + uVar17 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xe] + uVar17 * 4)" (( "(") (binary_expression "piVar13[0xe] + uVar17 * 4" (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar17 * 4" (identifier "uVar17") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" (else "else") (compound_statement "{\n                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,uVar17)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar13 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar13 + 0x60)" (* "*") (cast_expression "(code **)(*piVar13 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x60)" (( "(") (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar13,uVar17)" (( "(") (identifier "piVar13") (, ",") (identifier "uVar17") () ")")))) (; ";")) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "uVar17 & 0x7fffffff | 0x80000000" (binary_expression "uVar17 & 0x7fffffff" (identifier "uVar17") (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_f8 = CONCAT13(1,uStack_f8._1_3_);" (assignment_expression "uStack_f8 = CONCAT13(1,uStack_f8._1_3_)" (identifier "uStack_f8") (= "=") (call_expression "CONCAT13(1,uStack_f8._1_3_)" (identifier "CONCAT13") (argument_list "(1,uStack_f8._1_3_)" (( "(") (number_literal "1") (, ",") (field_expression "uStack_f8._1_3_" (identifier "uStack_f8") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar20,puVar19)" (( "(") (identifier "pcVar20") (, ",") (identifier "puVar19") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" (else "else") (compound_statement "{\n                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;\n                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);\n                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;\n                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }\n                    *(int *)pcVar16 = -2;\n                    uStack_f8 = uStack_f8 & 0xffffff;\n                    (*pcVar24)(pcVar20,puVar19);\n                  }" ({ "{") (if_statement "if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;" (if "if") (parenthesized_expression "(((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0)" (( "(") (binary_expression "((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0" (binary_expression "((uint)pcVar14 & 0xff) == 0" (parenthesized_expression "((uint)pcVar14 & 0xff)" (( "(") (binary_expression "(uint)pcVar14 & 0xff" (cast_expression "(uint)pcVar14" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar14")) (& "&") (number_literal "0xff")) () ")")) (== "==") (number_literal "0")) (&& "&&") (binary_expression "pcVar21 == (code *)0x0" (identifier "pcVar21") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) () ")")) (goto_statement "goto LAB_000e9768;" (goto "goto") (statement_identifier "LAB_000e9768") (; ";"))) (expression_statement "pcVar16 = (code *)(piVar13[0x3a] + iVar2);" (assignment_expression "pcVar16 = (code *)(piVar13[0x3a] + iVar2)" (identifier "pcVar16") (= "=") (cast_expression "(code *)(piVar13[0x3a] + iVar2)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0x3a] + iVar2)" (( "(") (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" (identifier "piVar13") ([ "[") (number_literal "0x3a") (] "]")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (if_statement "if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;" (if "if") (parenthesized_expression "((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21)" (( "(") (binary_expression "(code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21" (cast_expression "(code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 4)" (( "(") (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 4" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" (identifier "piVar13") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar13[0x3a]" (identifier "piVar13") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "4")) () ")"))) (<= "<=") (identifier "pcVar21")) () ")")) (goto_statement "goto LAB_000e9cb4;" (goto "goto") (statement_identifier "LAB_000e9cb4") (; ";"))) (if_statement "if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }" (if "if") (parenthesized_expression "((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2))" (( "(") (binary_expression "(*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)" (parenthesized_expression "(*(int *)pcVar16 != 0)" (( "(") (binary_expression "*(int *)pcVar16 != 0" (pointer_expression "*(int *)pcVar16" (* "*") (cast_expression "(int *)pcVar16" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar16"))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)pcVar16 != -2)" (( "(") (binary_expression "*(int *)pcVar16 != -2" (pointer_expression "*(int *)pcVar16" (* "*") (cast_expression "(int *)pcVar16" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar16"))) (!= "!=") (number_literal "-2")) () ")"))) () ")")) (compound_statement "{\n                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);\n                      pcVar4 = pcVar3;\nLAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);\n                      pcVar3 = pcVar4;\n                    }" ({ "{") (expression_statement "uVar17 = *(uint *)(pcStack_100 + -0x77f0);" (assignment_expression "uVar17 = *(uint *)(pcStack_100 + -0x77f0)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcStack_100 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_100 + -0x77f0)" (( "(") (binary_expression "pcStack_100 + -0x77f0" (identifier "pcStack_100") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcVar3;" (assignment_expression "pcVar4 = pcVar3" (identifier "pcVar4") (= "=") (identifier "pcVar3")) (; ";")) (labeled_statement "LAB_000e981c:\n                      (**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);" (statement_identifier "LAB_000e981c") (: ":") (expression_statement "(**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);" (call_expression "(**(code **)(pcStack_100 + -0x7810))\n                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_100 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_100 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_100 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_100 + -0x7810)" (( "(") (binary_expression "pcStack_100 + -0x7810" (identifier "pcStack_100") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0)" (( "(") (binary_expression "*(uint *)(pcStack_100 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcStack_100 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcStack_100 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_100 + -0x7fc4)" (( "(") (binary_expression "pcStack_100 + -0x7fc4" (identifier "pcStack_100") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x71f") (, ",") (binary_expression "uVar17 - 0x48c0" (identifier "uVar17") (- "-") (number_literal "0x48c0")) () ")"))) (; ";"))) (expression_statement "pcVar3 = pcVar4;" (assignment_expression "pcVar3 = pcVar4" (identifier "pcVar3") (= "=") (identifier "pcVar4")) (; ";")) (} "}"))) (expression_statement "*(int *)pcVar16 = -2;" (assignment_expression "*(int *)pcVar16 = -2" (pointer_expression "*(int *)pcVar16" (* "*") (cast_expression "(int *)pcVar16" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar16"))) (= "=") (number_literal "-2")) (; ";")) (expression_statement "uStack_f8 = uStack_f8 & 0xffffff;" (assignment_expression "uStack_f8 = uStack_f8 & 0xffffff" (identifier "uStack_f8") (= "=") (binary_expression "uStack_f8 & 0xffffff" (identifier "uStack_f8") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar24)(pcVar20,puVar19);" (call_expression "(*pcVar24)(pcVar20,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar20,puVar19)" (( "(") (identifier "pcVar20") (, ",") (identifier "puVar19") () ")"))) (; ";")) (} "}")))) (goto_statement "goto LAB_000e96e0;" (goto "goto") (statement_identifier "LAB_000e96e0") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);" (call_expression "(**(code **)(pcStack_100 + -0x7810))\n                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0)" (parenthesized_expression "(**(code **)(pcStack_100 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_100 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_100 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_100 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_100 + -0x7810)" (( "(") (binary_expression "pcStack_100 + -0x7810" (identifier "pcStack_100") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0)" (( "(") (binary_expression "*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcStack_100 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcStack_100 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_100 + -0x7fc4)" (( "(") (binary_expression "pcStack_100 + -0x7fc4" (identifier "pcStack_100") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (binary_expression "*(uint *)(pcStack_100 + -0x77f0) - 0x50e0" (pointer_expression "*(uint *)(pcStack_100 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcStack_100 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_100 + -0x77f0)" (( "(") (binary_expression "pcStack_100 + -0x77f0" (identifier "pcStack_100") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x50e0")) () ")"))) (; ";")) (labeled_statement "LAB_000e9cb4:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);" (statement_identifier "LAB_000e9cb4") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x5068)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x8e3") (, ",") (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x5068" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x5068")) () ")"))) (; ";"))) (} "}"))) (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x5098)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x3588")) (, ",") (number_literal "0x279c") (, ",") (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x5098" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x5098")) () ")"))) (; ";")) (labeled_statement "LAB_000e9cec:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" (statement_identifier "LAB_000e9cec") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x5c8") (, ",") (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x33a0" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x33a0")) () ")"))) (; ";"))) (labeled_statement "LAB_000e9d08:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0);" (statement_identifier "LAB_000e9d08") (: ":") (expression_statement "uVar10 = *(uint *)(pcVar4 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcVar4 + -0x77f0)" (identifier "uVar10") (= "=") (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";"))) (labeled_statement "LAB_000e9d0c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);" (statement_identifier "LAB_000e9d0c") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x50b") (, ",") (binary_expression "uVar10 - 0x34dc" (identifier "uVar10") (- "-") (number_literal "0x34dc")) () ")"))) (; ";"))) (labeled_statement "LAB_000e9d24:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);" (statement_identifier "LAB_000e9d24") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x50b0" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x50b0")) () ")"))) (; ";"))) (labeled_statement "switchD_000e9b48_caseD_3:\n              pcVar16 = *(code **)(pcVar4 + -0x7810);" (statement_identifier "switchD_000e9b48_caseD_3") (: ":") (expression_statement "pcVar16 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar16 = *(code **)(pcVar4 + -0x7810)" (identifier "pcVar16") (= "=") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) (; ";"))) (expression_statement "pcVar25 = FUN_000e9d5c;" (assignment_expression "pcVar25 = FUN_000e9d5c" (identifier "pcVar25") (= "=") (identifier "FUN_000e9d5c")) (; ";")) (expression_statement "(*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);" (call_expression "(*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8)" (parenthesized_expression "(*pcVar16)" (( "(") (pointer_expression "*pcVar16" (* "*") (identifier "pcVar16")) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x276") (, ",") (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x50c8" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x50c8")) () ")"))) (; ";")) (expression_statement "pcVar14 = pcStack_e8;" (assignment_expression "pcVar14 = pcStack_e8" (identifier "pcVar14") (= "=") (identifier "pcStack_e8")) (; ";")) (expression_statement "pcVar21 = pcStack_ec;" (assignment_expression "pcVar21 = pcStack_ec" (identifier "pcVar21") (= "=") (identifier "pcStack_ec")) (; ";")) (expression_statement "pcVar4 = pcVar16 + 0x3df4e4;" (assignment_expression "pcVar4 = pcVar16 + 0x3df4e4" (identifier "pcVar4") (= "=") (binary_expression "pcVar16 + 0x3df4e4" (identifier "pcVar16") (+ "+") (number_literal "0x3df4e4"))) (; ";")) (expression_statement "pcStack_134 = pcVar22;" (assignment_expression "pcStack_134 = pcVar22" (identifier "pcStack_134") (= "=") (identifier "pcVar22")) (; ";")) (expression_statement "pcStack_140 = pcVar20;" (assignment_expression "pcStack_140 = pcVar20" (identifier "pcStack_140") (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "uVar17 = (uint)bStack_f1;" (assignment_expression "uVar17 = (uint)bStack_f1" (identifier "uVar17") (= "=") (cast_expression "(uint)bStack_f1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bStack_f1"))) (; ";")) (expression_statement "piVar7 = piVar5;" (assignment_expression "piVar7 = piVar5" (identifier "piVar7") (= "=") (identifier "piVar5")) (; ";")) (expression_statement "pcVar22 = pcStack_100;" (assignment_expression "pcVar22 = pcStack_100" (identifier "pcVar22") (= "=") (identifier "pcStack_100")) (; ";")) (expression_statement "pcStack_160 = pcVar4;" (assignment_expression "pcStack_160 = pcVar4" (identifier "pcStack_160") (= "=") (identifier "pcVar4")) (; ";")) (expression_statement "pcStack_13c = pcVar15;" (assignment_expression "pcStack_13c = pcVar15" (identifier "pcStack_13c") (= "=") (identifier "pcVar15")) (; ";")) (expression_statement "pcStack_138 = pcVar24;" (assignment_expression "pcStack_138 = pcVar24" (identifier "pcStack_138") (= "=") (identifier "pcVar24")) (; ";")) (expression_statement "piStack_130 = piVar13;" (assignment_expression "piStack_130 = piVar13" (identifier "piStack_130") (= "=") (identifier "piVar13")) (; ";")) (expression_statement "pcStack_12c = pcVar3;" (assignment_expression "pcStack_12c = pcVar3" (identifier "pcStack_12c") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "uStack_128 = uVar6;" (assignment_expression "uStack_128 = uVar6" (identifier "uStack_128") (= "=") (identifier "uVar6")) (; ";")) (expression_statement "puStack_124 = puVar19;" (assignment_expression "puStack_124 = puVar19" (identifier "puStack_124") (= "=") (identifier "puVar19")) (; ";")) (expression_statement "pcStack_120 = pcVar23;" (assignment_expression "pcStack_120 = pcVar23" (identifier "pcStack_120") (= "=") (identifier "pcVar23")) (; ";")) (expression_statement "pcStack_11c = pcVar25;" (assignment_expression "pcStack_11c = pcVar25" (identifier "pcStack_11c") (= "=") (identifier "pcVar25")) (; ";")) (if_statement "if (iStack_104 == 9) {\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }" (if "if") (parenthesized_expression "(iStack_104 == 9)" (( "(") (binary_expression "iStack_104 == 9" (identifier "iStack_104") (== "==") (number_literal "9")) () ")")) (compound_statement "{\n                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);\n                pcVar4 = pcStack_150;\n                if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }\n                return pcVar4;\n              }" ({ "{") (expression_statement "pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);" (assignment_expression "pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8)" (identifier "pcStack_150") (= "=") (pointer_expression "*(code **)(pcVar16 + 0x3d7dc8)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d7dc8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d7dc8)" (( "(") (binary_expression "pcVar16 + 0x3d7dc8" (identifier "pcVar16") (+ "+") (number_literal "0x3d7dc8")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcStack_150;" (assignment_expression "pcVar4 = pcStack_150" (identifier "pcVar4") (= "=") (identifier "pcStack_150")) (; ";")) (if_statement "if (pcStack_fc != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }" (if "if") (parenthesized_expression "(pcStack_fc != (code *)0x0)" (( "(") (binary_expression "pcStack_fc != (code *)0x0" (identifier "pcStack_fc") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  pcVar24 = (code *)0x0;\n                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);\n                  pcVar23 = (code *)&uStack_158;\n                  puVar19 = (uint *)0xff00;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);\n                }" ({ "{") (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" (identifier "pcVar24") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar3 = *(code **)(pcVar16 + 0x3d7e00);" (assignment_expression "pcVar3 = *(code **)(pcVar16 + 0x3d7e00)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(pcVar16 + 0x3d7e00)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d7e00)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d7e00)" (( "(") (binary_expression "pcVar16 + 0x3d7e00" (identifier "pcVar16") (+ "+") (number_literal "0x3d7e00")) () ")"))))) (; ";")) (expression_statement "pcVar23 = (code *)&uStack_158;" (assignment_expression "pcVar23 = (code *)&uStack_158" (identifier "pcVar23") (= "=") (cast_expression "(code *)&uStack_158" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&uStack_158" (& "&") (identifier "uStack_158")))) (; ";")) (expression_statement "puVar19 = (uint *)0xff00;" (assignment_expression "puVar19 = (uint *)0xff00" (identifier "puVar19") (= "=") (cast_expression "(uint *)0xff00" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xff00"))) (; ";")) (do_statement "do {\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  } while (pcStack_fc != pcVar24);" (do "do") (compound_statement "{\n                    if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar22 = pcVar22 + 8;\n                    pcVar4 = pcStack_fc;\n                  }" ({ "{") (if_statement "if (uVar17 == 0) {\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }\n                    else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }" (if "if") (parenthesized_expression "(uVar17 == 0)" (( "(") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);\n                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);\n                      if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }\n                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                    }" ({ "{") (labeled_statement "LAB_000ea0b8:\n                      uVar6 = *(uint *)(pcVar22 + 4);" (statement_identifier "LAB_000ea0b8") (: ":") (expression_statement "uVar6 = *(uint *)(pcVar22 + 4);" (assignment_expression "uVar6 = *(uint *)(pcVar22 + 4)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(pcVar22 + 4)" (* "*") (cast_expression "(uint *)(pcVar22 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 4)" (( "(") (binary_expression "pcVar22 + 4" (identifier "pcVar22") (+ "+") (number_literal "4")) () ")"))))) (; ";"))) (expression_statement "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8);" (assignment_expression "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8)" (identifier "pcVar20") (= "=") (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8)" (( "(") (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        >> 8" (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10)" (( "(") (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" (( "(") (binary_expression "uVar6 >> 0x10" (identifier "uVar6") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" (( "(") (binary_expression "uVar6 >> 0x18" (identifier "uVar6") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" (( "(") (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" (( "(") (binary_expression "uVar6 & 0xff" (identifier "uVar6") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" (identifier "uVar6") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000"))) (>> ">>") (number_literal "8")) () ")")))) (; ";")) (if_statement "if (pcVar20 < pcStack_f0) {\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }\n                      else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }" (if "if") (parenthesized_expression "(pcVar20 < pcStack_f0)" (( "(") (binary_expression "pcVar20 < pcStack_f0" (identifier "pcVar20") (< "<") (identifier "pcStack_f0")) () ")")) (compound_statement "{\n                        pcVar15 = (code *)((int)pcVar20 * 0x10);\n                        pcVar4 = pcStack_160;\n                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;\n                        pcVar16 = pcVar21 + (int)pcVar15;\n                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                        if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }\n                        pcVar4 = pcStack_160;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                      }" ({ "{") (expression_statement "pcVar15 = (code *)((int)pcVar20 * 0x10);" (assignment_expression "pcVar15 = (code *)((int)pcVar20 * 0x10)" (identifier "pcVar15") (= "=") (cast_expression "(code *)((int)pcVar20 * 0x10)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar20 * 0x10)" (( "(") (binary_expression "(int)pcVar20 * 0x10" (cast_expression "(int)pcVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar20")) (* "*") (number_literal "0x10")) () ")")))) (; ";")) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" (identifier "pcVar4") (= "=") (identifier "pcStack_160")) (; ";")) (if_statement "if (pcVar21 == (code *)0x0) goto LAB_000ea38c;" (if "if") (parenthesized_expression "(pcVar21 == (code *)0x0)" (( "(") (binary_expression "pcVar21 == (code *)0x0" (identifier "pcVar21") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000ea38c;" (goto "goto") (statement_identifier "LAB_000ea38c") (; ";"))) (expression_statement "pcVar16 = pcVar21 + (int)pcVar15;" (assignment_expression "pcVar16 = pcVar21 + (int)pcVar15" (identifier "pcVar16") (= "=") (binary_expression "pcVar21 + (int)pcVar15" (identifier "pcVar21") (+ "+") (cast_expression "(int)pcVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar15")))) (; ";")) (expression_statement "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);" (assignment_expression "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (identifier "uVar6") (= "=") (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff)" (( "(") (binary_expression "*(ushort *)(pcVar16 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" (* "*") (cast_expression "(ushort *)(pcVar16 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xe)" (( "(") (binary_expression "pcVar16 + 0xe" (identifier "pcVar16") (+ "+") (number_literal "0xe")) () ")")))) (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (call_expression "(uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(ushort *)(pcVar16 + 0xe) >> 8)" (( "(") (binary_expression "*(ushort *)(pcVar16 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" (* "*") (cast_expression "(ushort *)(pcVar16 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xe)" (( "(") (binary_expression "pcVar16 + 0xe" (identifier "pcVar16") (+ "+") (number_literal "0xe")) () ")")))) (>> ">>") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (uVar6 < 0xff00) {\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }" (if "if") (parenthesized_expression "(uVar6 < 0xff00)" (( "(") (binary_expression "uVar6 < 0xff00" (identifier "uVar6") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;\n                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                          pcVar4 = pcStack_160;\n                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;\n                          cVar1 = pcVar16[0xc];\n                        }" ({ "{") (labeled_statement "LAB_000ea208:\n                          if (uVar6 == 0) goto LAB_000ea108;" (statement_identifier "LAB_000ea208") (: ":") (if_statement "if (uVar6 == 0) goto LAB_000ea108;" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000ea108;" (goto "goto") (statement_identifier "LAB_000ea108") (; ";")))) (expression_statement "uVar10 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcStack_160 + -0x77f0)" (identifier "uVar10") (= "=") (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcStack_160 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_160 + -0x77f0)" (( "(") (binary_expression "pcStack_160 + -0x77f0" (identifier "pcStack_160") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" (identifier "pcVar4") (= "=") (identifier "pcStack_160")) (; ";")) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;" (if "if") (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" (( "(") (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" (identifier "piVar5") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000ea3a8;" (goto "goto") (statement_identifier "LAB_000ea3a8") (; ";"))) (if_statement "if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;" (if "if") (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar6 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar5[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000ea1b0;" (goto "goto") (statement_identifier "LAB_000ea1b0") (; ";"))) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar16[0xc]" (identifier "pcVar16") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }" (else "else") (compound_statement "{\n                          if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }\nLAB_000ea108:\n                          cVar1 = pcVar16[0xc];\n                        }" ({ "{") (if_statement "if (uVar6 == 0xffff) {\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }" (if "if") (parenthesized_expression "(uVar6 == 0xffff)" (( "(") (binary_expression "uVar6 == 0xffff" (identifier "uVar6") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                            iVar2 = piVar5[0xc];\n                            pcStack_14c = pcVar20;\n                            pcStack_148 = pcVar15;\n                            pcStack_144 = pcVar16;\n                            if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }\n                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);\n                            pcVar20 = pcStack_14c;\n                            pcVar15 = pcStack_148;\n                            pcVar16 = pcStack_144;\n                            goto LAB_000ea208;\n                          }" ({ "{") (expression_statement "iVar2 = piVar5[0xc];" (assignment_expression "iVar2 = piVar5[0xc]" (identifier "iVar2") (= "=") (subscript_expression "piVar5[0xc]" (identifier "piVar5") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "pcStack_14c = pcVar20;" (assignment_expression "pcStack_14c = pcVar20" (identifier "pcStack_14c") (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "pcStack_148 = pcVar15;" (assignment_expression "pcStack_148 = pcVar15" (identifier "pcStack_148") (= "=") (identifier "pcVar15")) (; ";")) (expression_statement "pcStack_144 = pcVar16;" (assignment_expression "pcStack_144 = pcVar16" (identifier "pcStack_144") (= "=") (identifier "pcVar16")) (; ";")) (if_statement "if (iVar2 == 0) {\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                              piVar5[0xc] = iVar2;\n                            }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar5 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar5 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar5 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x6c)" (( "(") (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar5)" (( "(") (identifier "piVar5") () ")")))) (; ";")) (expression_statement "piVar5[0xc] = iVar2;" (assignment_expression "piVar5[0xc] = iVar2" (subscript_expression "piVar5[0xc]" (identifier "piVar5") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar2")) (; ";")) (} "}"))) (expression_statement "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);" (assignment_expression "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c)" (identifier "uVar6") (= "=") (call_expression "(**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_160 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_160 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_160 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_160 + -0x7790)" (( "(") (binary_expression "pcStack_160 + -0x7790" (identifier "pcStack_160") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar2,piVar5,pcStack_14c)" (( "(") (identifier "iVar2") (, ",") (identifier "piVar5") (, ",") (identifier "pcStack_14c") () ")")))) (; ";")) (expression_statement "pcVar20 = pcStack_14c;" (assignment_expression "pcVar20 = pcStack_14c" (identifier "pcVar20") (= "=") (identifier "pcStack_14c")) (; ";")) (expression_statement "pcVar15 = pcStack_148;" (assignment_expression "pcVar15 = pcStack_148" (identifier "pcVar15") (= "=") (identifier "pcStack_148")) (; ";")) (expression_statement "pcVar16 = pcStack_144;" (assignment_expression "pcVar16 = pcStack_144" (identifier "pcVar16") (= "=") (identifier "pcStack_144")) (; ";")) (goto_statement "goto LAB_000ea208;" (goto "goto") (statement_identifier "LAB_000ea208") (; ";")) (} "}"))) (labeled_statement "LAB_000ea108:\n                          cVar1 = pcVar16[0xc];" (statement_identifier "LAB_000ea108") (: ":") (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar16[0xc]" (identifier "pcVar16") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (} "}")))) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" (identifier "pcVar4") (= "=") (identifier "pcStack_160")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }\n                        else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_158 = CONCAT13(2,uStack_158._1_3_);\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" ({ "{") (if_statement "if (*(code **)(*piVar5 + 0x60) == pcStack_150) {\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" (if "if") (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcStack_150)" (( "(") (binary_expression "*(code **)(*piVar5 + 0x60) == pcStack_150" (pointer_expression "*(code **)(*piVar5 + 0x60)" (* "*") (cast_expression "(code **)(*piVar5 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x60)" (( "(") (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcStack_150")) () ")")) (compound_statement "{\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" ({ "{") (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;" (if "if") (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" (( "(") (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" (identifier "piVar5") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000ea354;" (goto "goto") (statement_identifier "LAB_000ea354") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" (else "else") (compound_statement "{\n                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar5 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar5 + 0x60)" (* "*") (cast_expression "(code **)(*piVar5 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x60)" (( "(") (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar5,uVar6)" (( "(") (identifier "piVar5") (, ",") (identifier "uVar6") () ")")))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" (identifier "uVar6") (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_158 = CONCAT13(2,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(2,uStack_158._1_3_)" (identifier "uStack_158") (= "=") (call_expression "CONCAT13(2,uStack_158._1_3_)" (identifier "CONCAT13") (argument_list "(2,uStack_158._1_3_)" (( "(") (number_literal "2") (, ",") (field_expression "uStack_158._1_3_" (identifier "uStack_158") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "(pcVar14,pcVar23)" (( "(") (identifier "pcVar14") (, ",") (identifier "pcVar23") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" (else "else") (compound_statement "{\n                          pcVar15 = pcVar15 + piVar5[0x3a];\n                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;\n                          if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;\n                          *(int *)pcVar15 = -2;\n                          uStack_158 = uStack_158 & 0xffffff;\n                          (*pcVar3)(pcVar14,pcVar23);\n                        }" ({ "{") (expression_statement "pcVar15 = pcVar15 + piVar5[0x3a];" (assignment_expression "pcVar15 = pcVar15 + piVar5[0x3a]" (identifier "pcVar15") (= "=") (binary_expression "pcVar15 + piVar5[0x3a]" (identifier "pcVar15") (+ "+") (subscript_expression "piVar5[0x3a]" (identifier "piVar5") ([ "[") (number_literal "0x3a") (] "]")))) (; ";")) (if_statement "if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)\n                          goto LAB_000ea338;" (if "if") (parenthesized_expression "((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)" (( "(") (binary_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20" (cast_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 4)" (( "(") (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 4" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" (identifier "piVar5") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar5[0x3a]" (identifier "piVar5") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "4")) () ")"))) (<= "<=") (identifier "pcVar20")) () ")")) (goto_statement "goto LAB_000ea338;" (goto "goto") (statement_identifier "LAB_000ea338") (; ";"))) (if_statement "if ((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))\n                          goto LAB_000e9f98;" (if "if") (parenthesized_expression "((*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))" (( "(") (binary_expression "(*(int *)pcVar15 != 0) &&\n                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2)" (parenthesized_expression "(*(int *)pcVar15 != 0)" (( "(") (binary_expression "*(int *)pcVar15 != 0" (pointer_expression "*(int *)pcVar15" (* "*") (cast_expression "(int *)pcVar15" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15"))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2)" (( "(") (comma_expression "uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2" (assignment_expression "uVar6 = *(uint *)(pcStack_160 + -0x77f0)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcStack_160 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_160 + -0x77f0)" (( "(") (binary_expression "pcStack_160 + -0x77f0" (identifier "pcStack_160") (+ "+") (number_literal "-0x77f0")) () ")"))))) (, ",") (binary_expression "*(int *)pcVar15 != -2" (pointer_expression "*(int *)pcVar15" (* "*") (cast_expression "(int *)pcVar15" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15"))) (!= "!=") (number_literal "-2"))) () ")"))) () ")")) (goto_statement "goto LAB_000e9f98;" (goto "goto") (statement_identifier "LAB_000e9f98") (; ";"))) (expression_statement "*(int *)pcVar15 = -2;" (assignment_expression "*(int *)pcVar15 = -2" (pointer_expression "*(int *)pcVar15" (* "*") (cast_expression "(int *)pcVar15" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15"))) (= "=") (number_literal "-2")) (; ";")) (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" (identifier "uStack_158") (= "=") (binary_expression "uStack_158 & 0xffffff" (identifier "uStack_158") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "(pcVar14,pcVar23)" (( "(") (identifier "pcVar14") (, ",") (identifier "pcVar23") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }" (else "else") (compound_statement "{\n                        uStack_158 = uStack_158 & 0xffffff;\n                        (*pcVar3)(pcVar14,pcVar23);\n                      }" ({ "{") (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" (identifier "uStack_158") (= "=") (binary_expression "uStack_158 & 0xffffff" (identifier "uStack_158") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "(pcVar14,pcVar23)" (( "(") (identifier "pcVar14") (, ",") (identifier "pcVar23") () ")"))) (; ";")) (} "}")))) (expression_statement "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" (* "*") (cast_expression "(int *)((int)pcVar14 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar14 + 0xc)" (( "(") (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar14")) (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "*(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" (* "*") (cast_expression "(int *)((int)pcVar14 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar14 + 0xc)" (( "(") (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar14")) (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }" (else "else") (compound_statement "{\n                      uVar6 = *(uint *)pcVar22;\n                      uStack_168 = 0;\n                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);\n                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                      if (iVar2 != 0) goto LAB_000ea0b8;\nLAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                      (*pcVar3)(pcVar14,pcVar23);\n                    }" ({ "{") (expression_statement "uVar6 = *(uint *)pcVar22;" (assignment_expression "uVar6 = *(uint *)pcVar22" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)pcVar22" (* "*") (cast_expression "(uint *)pcVar22" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar22")))) (; ";")) (expression_statement "uStack_168 = 0;" (assignment_expression "uStack_168 = 0" (identifier "uStack_168") (= "=") (number_literal "0")) (; ";")) (expression_statement "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000);" (assignment_expression "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000)" (identifier "pcStack_164") (= "=") (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000)" (( "(") (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10)" (( "(") (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                             0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" (( "(") (binary_expression "uVar6 >> 0x10" (identifier "uVar6") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" (( "(") (binary_expression "uVar6 >> 0x18" (identifier "uVar6") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *\n                                                     0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" (( "(") (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" (( "(") (binary_expression "uVar6 & 0xff" (identifier "uVar6") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" (identifier "uVar6") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000"))) () ")")))) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);" (assignment_expression "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_160 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_160 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_160 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_160 + -0x76e0)" (( "(") (binary_expression "pcStack_160 + -0x76e0" (identifier "pcStack_160") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(uStack_f8,piVar5,uStack_108)" (( "(") (identifier "uStack_f8") (, ",") (identifier "piVar5") (, ",") (identifier "uStack_108") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) goto LAB_000ea0b8;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000ea0b8;" (goto "goto") (statement_identifier "LAB_000ea0b8") (; ";"))) (labeled_statement "LAB_000ea1b0:\n                      uStack_158 = CONCAT13(8,uStack_158._1_3_);" (statement_identifier "LAB_000ea1b0") (: ":") (expression_statement "uStack_158 = CONCAT13(8,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(8,uStack_158._1_3_)" (identifier "uStack_158") (= "=") (call_expression "CONCAT13(8,uStack_158._1_3_)" (identifier "CONCAT13") (argument_list "(8,uStack_158._1_3_)" (( "(") (number_literal "8") (, ",") (field_expression "uStack_158._1_3_" (identifier "uStack_158") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(*pcVar3)(pcVar14,pcVar23);" (call_expression "(*pcVar3)(pcVar14,pcVar23)" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "(pcVar14,pcVar23)" (( "(") (identifier "pcVar14") (, ",") (identifier "pcVar23") () ")"))) (; ";")) (} "}")))) (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" (identifier "pcVar24") (= "=") (binary_expression "pcVar24 + 1" (identifier "pcVar24") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar22 = pcVar22 + 8;" (assignment_expression "pcVar22 = pcVar22 + 8" (identifier "pcVar22") (= "=") (binary_expression "pcVar22 + 8" (identifier "pcVar22") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "pcVar4 = pcStack_fc;" (assignment_expression "pcVar4 = pcStack_fc" (identifier "pcVar4") (= "=") (identifier "pcStack_fc")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcStack_fc != pcVar24)" (( "(") (binary_expression "pcStack_fc != pcVar24" (identifier "pcStack_fc") (!= "!=") (identifier "pcVar24")) () ")")) (; ";")) (} "}"))) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (if_statement "if (iStack_104 == 4) {\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }" (if "if") (parenthesized_expression "(iStack_104 == 4)" (( "(") (binary_expression "iStack_104 == 4" (identifier "iStack_104") (== "==") (number_literal "4")) () ")")) (compound_statement "{\n                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);\n                if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }\n                pcVar3 = (code *)0x0;\n                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);\n                puVar19 = &uStack_158;\nLAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }\n                pcVar4 = pcStack_160;\n                uVar6 = *(uint *)(pcVar22 + 4);\n                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);\n                if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }\n                pcVar15 = (code *)((int)pcVar20 * 0x10);\n                if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }\n                (**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);\nLAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);\nLAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);\n              }" ({ "{") (expression_statement "pcVar24 = *(code **)(pcVar16 + 0x3d7e00);" (assignment_expression "pcVar24 = *(code **)(pcVar16 + 0x3d7e00)" (identifier "pcVar24") (= "=") (pointer_expression "*(code **)(pcVar16 + 0x3d7e00)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d7e00)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d7e00)" (( "(") (binary_expression "pcVar16 + 0x3d7e00" (identifier "pcVar16") (+ "+") (number_literal "0x3d7e00")) () ")"))))) (; ";")) (if_statement "if (pcStack_fc == (code *)0x0) {\n                  return (code *)0x0;\n                }" (if "if") (parenthesized_expression "(pcStack_fc == (code *)0x0)" (( "(") (binary_expression "pcStack_fc == (code *)0x0" (identifier "pcStack_fc") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  return (code *)0x0;\n                }" ({ "{") (return_statement "return (code *)0x0;" (return "return") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (; ";")) (} "}"))) (expression_statement "pcVar3 = (code *)0x0;" (assignment_expression "pcVar3 = (code *)0x0" (identifier "pcVar3") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);" (assignment_expression "pcVar23 = *(code **)(pcVar16 + 0x3d7dc8)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar16 + 0x3d7dc8)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d7dc8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d7dc8)" (( "(") (binary_expression "pcVar16 + 0x3d7dc8" (identifier "pcVar16") (+ "+") (number_literal "0x3d7dc8")) () ")"))))) (; ";")) (expression_statement "puVar19 = &uStack_158;" (assignment_expression "puVar19 = &uStack_158" (identifier "puVar19") (= "=") (pointer_expression "&uStack_158" (& "&") (identifier "uStack_158"))) (; ";")) (labeled_statement "LAB_000e9e0c:\n                while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }" (statement_identifier "LAB_000e9e0c") (: ":") (while_statement "while (uVar17 != 0) {\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }" (while "while") (parenthesized_expression "(uVar17 != 0)" (( "(") (binary_expression "uVar17 != 0" (identifier "uVar17") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  uVar6 = *(uint *)pcVar22;\n                  uStack_168 = 0;\n                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );\n                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);\n                  if (iVar2 != 0) break;\nLAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);\n                  (*pcVar24)(pcVar14,puVar19);\n                  pcVar3 = pcVar3 + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                }" ({ "{") (expression_statement "uVar6 = *(uint *)pcVar22;" (assignment_expression "uVar6 = *(uint *)pcVar22" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)pcVar22" (* "*") (cast_expression "(uint *)pcVar22" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar22")))) (; ";")) (expression_statement "uStack_168 = 0;" (assignment_expression "uStack_168 = 0" (identifier "uStack_168") (= "=") (number_literal "0")) (; ";")) (expression_statement "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        );" (assignment_expression "pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        )" (identifier "pcStack_164") (= "=") (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        )" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000\n                                        )" (( "(") (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10)" (( "(") (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>\n                                         0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" (( "(") (binary_expression "uVar6 >> 0x10" (identifier "uVar6") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" (( "(") (binary_expression "uVar6 >> 0x18" (identifier "uVar6") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" (( "(") (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" (( "(") (binary_expression "uVar6 & 0xff" (identifier "uVar6") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" (identifier "uVar6") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000"))) () ")")))) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);" (assignment_expression "iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_160 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_160 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_160 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_160 + -0x76e0)" (( "(") (binary_expression "pcStack_160 + -0x76e0" (identifier "pcStack_160") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(uStack_f8,piVar5,uStack_108)" (( "(") (identifier "uStack_f8") (, ",") (identifier "piVar5") (, ",") (identifier "uStack_108") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) break;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_000e9f08:\n                  uStack_158 = CONCAT13(8,uStack_158._1_3_);" (statement_identifier "LAB_000e9f08") (: ":") (expression_statement "uStack_158 = CONCAT13(8,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(8,uStack_158._1_3_)" (identifier "uStack_158") (= "=") (call_expression "CONCAT13(8,uStack_158._1_3_)" (identifier "CONCAT13") (argument_list "(8,uStack_158._1_3_)" (( "(") (number_literal "8") (, ",") (field_expression "uStack_158._1_3_" (identifier "uStack_158") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar14,puVar19)" (( "(") (identifier "pcVar14") (, ",") (identifier "puVar19") () ")"))) (; ";")) (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" (identifier "pcVar3") (= "=") (binary_expression "pcVar3 + 1" (identifier "pcVar3") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar22 = pcVar22 + 0xc;" (assignment_expression "pcVar22 = pcVar22 + 0xc" (identifier "pcVar22") (= "=") (binary_expression "pcVar22 + 0xc" (identifier "pcVar22") (+ "+") (number_literal "0xc"))) (; ";")) (if_statement "if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }" (if "if") (parenthesized_expression "(pcStack_fc == pcVar3)" (( "(") (binary_expression "pcStack_fc == pcVar3" (identifier "pcStack_fc") (== "==") (identifier "pcVar3")) () ")")) (compound_statement "{\n                    return pcStack_fc;\n                  }" ({ "{") (return_statement "return pcStack_fc;" (return "return") (identifier "pcStack_fc") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" (identifier "pcVar4") (= "=") (identifier "pcStack_160")) (; ";")) (expression_statement "uVar6 = *(uint *)(pcVar22 + 4);" (assignment_expression "uVar6 = *(uint *)(pcVar22 + 4)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(pcVar22 + 4)" (* "*") (cast_expression "(uint *)(pcVar22 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 4)" (( "(") (binary_expression "pcVar22 + 4" (identifier "pcVar22") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);" (assignment_expression "pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8)" (identifier "pcVar20") (= "=") (cast_expression "(code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8)" (( "(") (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8" (binary_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10" (binary_expression "(uVar6 >> 0x10) << 0x18" (parenthesized_expression "(uVar6 >> 0x10)" (( "(") (binary_expression "uVar6 >> 0x10" (identifier "uVar6") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar6 >> 0x18) << 0x10" (parenthesized_expression "(uVar6 >> 0x18)" (( "(") (binary_expression "uVar6 >> 0x18" (identifier "uVar6") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff)" (( "(") (binary_expression "(uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff" (binary_expression "(uVar6 & 0xff) << 8" (parenthesized_expression "(uVar6 & 0xff)" (( "(") (binary_expression "uVar6 & 0xff" (identifier "uVar6") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar6 >> 8 & 0xff" (binary_expression "uVar6 >> 8" (identifier "uVar6") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000"))) (>> ">>") (number_literal "8")) () ")")))) (; ";")) (if_statement "if (pcStack_f0 <= pcVar20) {\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }" (if "if") (parenthesized_expression "(pcStack_f0 <= pcVar20)" (( "(") (binary_expression "pcStack_f0 <= pcVar20" (identifier "pcStack_f0") (<= "<=") (identifier "pcVar20")) () ")")) (compound_statement "{\n                  uStack_158 = uStack_158 & 0xffffff;\n                  (*pcVar24)(pcVar14,puVar19);\nLAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;\n                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;\n                  pcVar22 = pcVar22 + 0xc;\n                  if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }\n                  goto LAB_000e9e0c;\n                }" ({ "{") (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" (identifier "uStack_158") (= "=") (binary_expression "uStack_158 & 0xffffff" (identifier "uStack_158") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar14,puVar19)" (( "(") (identifier "pcVar14") (, ",") (identifier "puVar19") () ")"))) (; ";")) (labeled_statement "LAB_000e9df0:\n                  pcVar3 = pcVar3 + 1;" (statement_identifier "LAB_000e9df0") (: ":") (expression_statement "pcVar3 = pcVar3 + 1;" (assignment_expression "pcVar3 = pcVar3 + 1" (identifier "pcVar3") (= "=") (binary_expression "pcVar3 + 1" (identifier "pcVar3") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" (* "*") (cast_expression "(int *)((int)pcVar14 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar14 + 0xc)" (( "(") (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar14")) (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "*(int *)((int)pcVar14 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar14 + 0xc)" (* "*") (cast_expression "(int *)((int)pcVar14 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar14 + 0xc)" (( "(") (binary_expression "(int)pcVar14 + 0xc" (cast_expression "(int)pcVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar14")) (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar22 = pcVar22 + 0xc;" (assignment_expression "pcVar22 = pcVar22 + 0xc" (identifier "pcVar22") (= "=") (binary_expression "pcVar22 + 0xc" (identifier "pcVar22") (+ "+") (number_literal "0xc"))) (; ";")) (if_statement "if (pcStack_fc == pcVar3) {\n                    return pcStack_fc;\n                  }" (if "if") (parenthesized_expression "(pcStack_fc == pcVar3)" (( "(") (binary_expression "pcStack_fc == pcVar3" (identifier "pcStack_fc") (== "==") (identifier "pcVar3")) () ")")) (compound_statement "{\n                    return pcStack_fc;\n                  }" ({ "{") (return_statement "return pcStack_fc;" (return "return") (identifier "pcStack_fc") (; ";")) (} "}"))) (goto_statement "goto LAB_000e9e0c;" (goto "goto") (statement_identifier "LAB_000e9e0c") (; ";")) (} "}"))) (expression_statement "pcVar15 = (code *)((int)pcVar20 * 0x10);" (assignment_expression "pcVar15 = (code *)((int)pcVar20 * 0x10)" (identifier "pcVar15") (= "=") (cast_expression "(code *)((int)pcVar20 * 0x10)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar20 * 0x10)" (( "(") (binary_expression "(int)pcVar20 * 0x10" (cast_expression "(int)pcVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar20")) (* "*") (number_literal "0x10")) () ")")))) (; ";")) (if_statement "if (pcVar21 != (code *)0x0) {\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }" (if "if") (parenthesized_expression "(pcVar21 != (code *)0x0)" (( "(") (binary_expression "pcVar21 != (code *)0x0" (identifier "pcVar21") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  pcVar16 = pcVar21 + (int)pcVar15;\n                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);\n                  if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }\n                  pcVar4 = pcStack_160;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  goto LAB_000e9df0;\n                }" ({ "{") (expression_statement "pcVar16 = pcVar21 + (int)pcVar15;" (assignment_expression "pcVar16 = pcVar21 + (int)pcVar15" (identifier "pcVar16") (= "=") (binary_expression "pcVar21 + (int)pcVar15" (identifier "pcVar21") (+ "+") (cast_expression "(int)pcVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar15")))) (; ";")) (expression_statement "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);" (assignment_expression "uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (identifier "uVar6") (= "=") (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |\n                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar16 + 0xe) & 0xff)" (( "(") (binary_expression "*(ushort *)(pcVar16 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" (* "*") (cast_expression "(ushort *)(pcVar16 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xe)" (( "(") (binary_expression "pcVar16 + 0xe" (identifier "pcVar16") (+ "+") (number_literal "0xe")) () ")")))) (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (call_expression "(uint)(*(ushort *)(pcVar16 + 0xe) >> 8)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(ushort *)(pcVar16 + 0xe) >> 8)" (( "(") (binary_expression "*(ushort *)(pcVar16 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar16 + 0xe)" (* "*") (cast_expression "(ushort *)(pcVar16 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xe)" (( "(") (binary_expression "pcVar16 + 0xe" (identifier "pcVar16") (+ "+") (number_literal "0xe")) () ")")))) (>> ">>") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (uVar6 < 0xff00) {\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }" (if "if") (parenthesized_expression "(uVar6 < 0xff00)" (( "(") (binary_expression "uVar6 < 0xff00" (identifier "uVar6") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;\n                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);\n                    pcVar4 = pcStack_160;\n                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;\n                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;\n                    cVar1 = pcVar16[0xc];\n                  }" ({ "{") (labeled_statement "LAB_000ea00c:\n                    if (uVar6 == 0) goto LAB_000e9e68;" (statement_identifier "LAB_000ea00c") (: ":") (if_statement "if (uVar6 == 0) goto LAB_000e9e68;" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e9e68;" (goto "goto") (statement_identifier "LAB_000e9e68") (; ";")))) (expression_statement "uVar10 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar10 = *(uint *)(pcStack_160 + -0x77f0)" (identifier "uVar10") (= "=") (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcStack_160 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_160 + -0x77f0)" (( "(") (binary_expression "pcStack_160 + -0x77f0" (identifier "pcStack_160") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" (identifier "pcVar4") (= "=") (identifier "pcStack_160")) (; ";")) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;" (if "if") (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" (( "(") (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" (identifier "piVar5") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000ea3a8;" (goto "goto") (statement_identifier "LAB_000ea3a8") (; ";"))) (if_statement "if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;" (if "if") (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar6 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar5[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e9f08;" (goto "goto") (statement_identifier "LAB_000e9f08") (; ";"))) (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar16[0xc]" (identifier "pcVar16") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }" (else "else") (compound_statement "{\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }\nLAB_000e9e68:\n                    cVar1 = pcVar16[0xc];\n                  }" ({ "{") (if_statement "if (uVar6 == 0xffff) {\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }" (if "if") (parenthesized_expression "(uVar6 == 0xffff)" (( "(") (binary_expression "uVar6 == 0xffff" (identifier "uVar6") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                      iVar2 = piVar5[0xc];\n                      pcStack_150 = pcVar20;\n                      pcStack_14c = pcVar15;\n                      pcStack_148 = pcVar16;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);\n                      pcVar20 = pcStack_150;\n                      pcVar15 = pcStack_14c;\n                      pcVar16 = pcStack_148;\n                      goto LAB_000ea00c;\n                    }" ({ "{") (expression_statement "iVar2 = piVar5[0xc];" (assignment_expression "iVar2 = piVar5[0xc]" (identifier "iVar2") (= "=") (subscript_expression "piVar5[0xc]" (identifier "piVar5") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "pcStack_150 = pcVar20;" (assignment_expression "pcStack_150 = pcVar20" (identifier "pcStack_150") (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "pcStack_14c = pcVar15;" (assignment_expression "pcStack_14c = pcVar15" (identifier "pcStack_14c") (= "=") (identifier "pcVar15")) (; ";")) (expression_statement "pcStack_148 = pcVar16;" (assignment_expression "pcStack_148 = pcVar16" (identifier "pcStack_148") (= "=") (identifier "pcVar16")) (; ";")) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                        piVar5[0xc] = iVar2;\n                      }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar5 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar5 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar5 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x6c)" (( "(") (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar5)" (( "(") (identifier "piVar5") () ")")))) (; ";")) (expression_statement "piVar5[0xc] = iVar2;" (assignment_expression "piVar5[0xc] = iVar2" (subscript_expression "piVar5[0xc]" (identifier "piVar5") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar2")) (; ";")) (} "}"))) (expression_statement "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);" (assignment_expression "uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150)" (identifier "uVar6") (= "=") (call_expression "(**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_160 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_160 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_160 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_160 + -0x7790)" (( "(") (binary_expression "pcStack_160 + -0x7790" (identifier "pcStack_160") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar2,piVar5,pcStack_150)" (( "(") (identifier "iVar2") (, ",") (identifier "piVar5") (, ",") (identifier "pcStack_150") () ")")))) (; ";")) (expression_statement "pcVar20 = pcStack_150;" (assignment_expression "pcVar20 = pcStack_150" (identifier "pcVar20") (= "=") (identifier "pcStack_150")) (; ";")) (expression_statement "pcVar15 = pcStack_14c;" (assignment_expression "pcVar15 = pcStack_14c" (identifier "pcVar15") (= "=") (identifier "pcStack_14c")) (; ";")) (expression_statement "pcVar16 = pcStack_148;" (assignment_expression "pcVar16 = pcStack_148" (identifier "pcVar16") (= "=") (identifier "pcStack_148")) (; ";")) (goto_statement "goto LAB_000ea00c;" (goto "goto") (statement_identifier "LAB_000ea00c") (; ";")) (} "}"))) (labeled_statement "LAB_000e9e68:\n                    cVar1 = pcVar16[0xc];" (statement_identifier "LAB_000e9e68") (: ":") (expression_statement "cVar1 = pcVar16[0xc];" (assignment_expression "cVar1 = pcVar16[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar16[0xc]" (identifier "pcVar16") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (} "}")))) (expression_statement "pcVar4 = pcStack_160;" (assignment_expression "pcVar4 = pcStack_160" (identifier "pcVar4") (= "=") (identifier "pcStack_160")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }\n                  else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                    uStack_158 = CONCAT13(1,uStack_158._1_3_);\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" ({ "{") (if_statement "if (*(code **)(*piVar5 + 0x60) == pcVar23) {\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" (if "if") (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcVar23)" (( "(") (binary_expression "*(code **)(*piVar5 + 0x60) == pcVar23" (pointer_expression "*(code **)(*piVar5 + 0x60)" (* "*") (cast_expression "(code **)(*piVar5 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x60)" (( "(") (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcVar23")) () ")")) (compound_statement "{\n                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;\n                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" ({ "{") (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;" (if "if") (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" (( "(") (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" (identifier "piVar5") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000ea354;" (goto "goto") (statement_identifier "LAB_000ea354") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" (else "else") (compound_statement "{\n                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                      uVar6 = *(uint *)(iVar2 + 0x98);\n                    }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar5 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar5 + 0x60)" (* "*") (cast_expression "(code **)(*piVar5 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x60)" (( "(") (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar5,uVar6)" (( "(") (identifier "piVar5") (, ",") (identifier "uVar6") () ")")))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" (identifier "uVar6") (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_158 = CONCAT13(1,uStack_158._1_3_);" (assignment_expression "uStack_158 = CONCAT13(1,uStack_158._1_3_)" (identifier "uStack_158") (= "=") (call_expression "CONCAT13(1,uStack_158._1_3_)" (identifier "CONCAT13") (argument_list "(1,uStack_158._1_3_)" (( "(") (number_literal "1") (, ",") (field_expression "uStack_158._1_3_" (identifier "uStack_158") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar14,puVar19)" (( "(") (identifier "pcVar14") (, ",") (identifier "puVar19") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" (else "else") (compound_statement "{\n                    pcVar15 = pcVar15 + piVar5[0x3a];\n                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;\n                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }\n                    *(int *)pcVar15 = -2;\n                    uStack_158 = uStack_158 & 0xffffff;\n                    (*pcVar24)(pcVar14,puVar19);\n                  }" ({ "{") (expression_statement "pcVar15 = pcVar15 + piVar5[0x3a];" (assignment_expression "pcVar15 = pcVar15 + piVar5[0x3a]" (identifier "pcVar15") (= "=") (binary_expression "pcVar15 + piVar5[0x3a]" (identifier "pcVar15") (+ "+") (subscript_expression "piVar5[0x3a]" (identifier "piVar5") ([ "[") (number_literal "0x3a") (] "]")))) (; ";")) (if_statement "if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;" (if "if") (parenthesized_expression "((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)" (( "(") (binary_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20" (cast_expression "(code *)(piVar5[0x3b] - piVar5[0x3a] >> 4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 4)" (( "(") (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 4" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" (identifier "piVar5") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar5[0x3a]" (identifier "piVar5") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "4")) () ")"))) (<= "<=") (identifier "pcVar20")) () ")")) (goto_statement "goto LAB_000ea338;" (goto "goto") (statement_identifier "LAB_000ea338") (; ";"))) (if_statement "if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }" (if "if") (parenthesized_expression "((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2))" (( "(") (binary_expression "(*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)" (parenthesized_expression "(*(int *)pcVar15 != 0)" (( "(") (binary_expression "*(int *)pcVar15 != 0" (pointer_expression "*(int *)pcVar15" (* "*") (cast_expression "(int *)pcVar15" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15"))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)pcVar15 != -2)" (( "(") (binary_expression "*(int *)pcVar15 != -2" (pointer_expression "*(int *)pcVar15" (* "*") (cast_expression "(int *)pcVar15" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15"))) (!= "!=") (number_literal "-2")) () ")"))) () ")")) (compound_statement "{\n                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);\nLAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);\n                    }" ({ "{") (expression_statement "uVar6 = *(uint *)(pcStack_160 + -0x77f0);" (assignment_expression "uVar6 = *(uint *)(pcStack_160 + -0x77f0)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcStack_160 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_160 + -0x77f0)" (( "(") (binary_expression "pcStack_160 + -0x77f0" (identifier "pcStack_160") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (labeled_statement "LAB_000e9f98:\n                      (**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);" (statement_identifier "LAB_000e9f98") (: ":") (expression_statement "(**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);" (call_expression "(**(code **)(pcStack_160 + -0x7810))\n                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_160 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_160 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_160 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_160 + -0x7810)" (( "(") (binary_expression "pcStack_160 + -0x7810" (identifier "pcStack_160") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0)" (( "(") (binary_expression "*(uint *)(pcStack_160 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcStack_160 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcStack_160 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_160 + -0x7fc4)" (( "(") (binary_expression "pcStack_160 + -0x7fc4" (identifier "pcStack_160") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x71f") (, ",") (binary_expression "uVar6 - 0x48c0" (identifier "uVar6") (- "-") (number_literal "0x48c0")) () ")"))) (; ";"))) (} "}"))) (expression_statement "*(int *)pcVar15 = -2;" (assignment_expression "*(int *)pcVar15 = -2" (pointer_expression "*(int *)pcVar15" (* "*") (cast_expression "(int *)pcVar15" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15"))) (= "=") (number_literal "-2")) (; ";")) (expression_statement "uStack_158 = uStack_158 & 0xffffff;" (assignment_expression "uStack_158 = uStack_158 & 0xffffff" (identifier "uStack_158") (= "=") (binary_expression "uStack_158 & 0xffffff" (identifier "uStack_158") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar24)(pcVar14,puVar19);" (call_expression "(*pcVar24)(pcVar14,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar14,puVar19)" (( "(") (identifier "pcVar14") (, ",") (identifier "puVar19") () ")"))) (; ";")) (} "}")))) (goto_statement "goto LAB_000e9df0;" (goto "goto") (statement_identifier "LAB_000e9df0") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);" (call_expression "(**(code **)(pcStack_160 + -0x7810))\n                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8)" (parenthesized_expression "(**(code **)(pcStack_160 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_160 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_160 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_160 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_160 + -0x7810)" (( "(") (binary_expression "pcStack_160 + -0x7810" (identifier "pcStack_160") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8)" (( "(") (binary_expression "*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcStack_160 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcStack_160 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_160 + -0x7fc4)" (( "(") (binary_expression "pcStack_160 + -0x7fc4" (identifier "pcStack_160") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (binary_expression "*(uint *)(pcStack_160 + -0x77f0) - 0x48d8" (pointer_expression "*(uint *)(pcStack_160 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcStack_160 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_160 + -0x77f0)" (( "(") (binary_expression "pcStack_160 + -0x77f0" (identifier "pcStack_160") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x48d8")) () ")"))) (; ";")) (labeled_statement "LAB_000ea338:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);" (statement_identifier "LAB_000ea338") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x489c)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x8e3") (, ",") (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x489c" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x489c")) () ")"))) (; ";"))) (labeled_statement "LAB_000ea354:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" (statement_identifier "LAB_000ea354") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x5c8") (, ",") (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x33a0" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x33a0")) () ")"))) (; ";"))) (} "}"))) (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                         *(uint *)(pcVar4 + -0x77f0) - 0x4860)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x3588")) (, ",") (number_literal "0x27da") (, ",") (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x4860" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x4860")) () ")"))) (; ";")) (labeled_statement "LAB_000ea38c:\n              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;" (statement_identifier "LAB_000ea38c") (: ":") (expression_statement "uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;" (assignment_expression "uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878" (identifier "uVar10") (= "=") (binary_expression "*(uint *)(pcVar4 + -0x77f0) - 0x4878" (pointer_expression "*(uint *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (- "-") (number_literal "0x4878"))) (; ";"))) (expression_statement "(**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);" (call_expression "(**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (identifier "uVar10") () ")"))) (; ";")) (labeled_statement "LAB_000ea3a8:\n              pcVar25 = *(code **)(pcVar4 + -0x7810);" (statement_identifier "LAB_000ea3a8") (: ":") (expression_statement "pcVar25 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar25 = *(code **)(pcVar4 + -0x7810)" (identifier "pcVar25") (= "=") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) (; ";"))) (expression_statement "pcVar26 = FUN_000ea3c0;" (assignment_expression "pcVar26 = FUN_000ea3c0" (identifier "pcVar26") (= "=") (identifier "FUN_000ea3c0")) (; ";")) (expression_statement "(*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);" (call_expression "(*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" (parenthesized_expression "(*pcVar25)" (( "(") (pointer_expression "*pcVar25" (* "*") (identifier "pcVar25")) () ")")) (argument_list "(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc)" (( "(") (binary_expression "*(uint *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(uint *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(uint *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x50b") (, ",") (binary_expression "uVar10 - 0x34dc" (identifier "uVar10") (- "-") (number_literal "0x34dc")) () ")"))) (; ";")) (expression_statement "pcVar16 = pcStack_148;" (assignment_expression "pcVar16 = pcStack_148" (identifier "pcVar16") (= "=") (identifier "pcStack_148")) (; ";")) (expression_statement "pcVar15 = pcStack_14c;" (assignment_expression "pcVar15 = pcStack_14c" (identifier "pcVar15") (= "=") (identifier "pcStack_14c")) (; ";")) (expression_statement "pcVar20 = pcStack_164;" (assignment_expression "pcVar20 = pcStack_164" (identifier "pcVar20") (= "=") (identifier "pcStack_164")) (; ";")) (expression_statement "pcVar4 = pcVar25 + 0x3dee80;" (assignment_expression "pcVar4 = pcVar25 + 0x3dee80" (identifier "pcVar4") (= "=") (binary_expression "pcVar25 + 0x3dee80" (identifier "pcVar25") (+ "+") (number_literal "0x3dee80"))) (; ";")) (expression_statement "pcStack_194 = pcVar21;" (assignment_expression "pcStack_194 = pcVar21" (identifier "pcStack_194") (= "=") (identifier "pcVar21")) (; ";")) (expression_statement "uStack_1a0 = (uint)pcVar14;" (assignment_expression "uStack_1a0 = (uint)pcVar14" (identifier "uStack_1a0") (= "=") (cast_expression "(uint)pcVar14" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar14"))) (; ";")) (expression_statement "puVar18 = (uint *)(uint)bStack_151;" (assignment_expression "puVar18 = (uint *)(uint)bStack_151" (identifier "puVar18") (= "=") (cast_expression "(uint *)(uint)bStack_151" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(uint)bStack_151" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bStack_151")))) (; ";")) (expression_statement "piVar13 = piVar7;" (assignment_expression "piVar13 = piVar7" (identifier "piVar13") (= "=") (identifier "piVar7")) (; ";")) (expression_statement "pcVar21 = pcStack_160;" (assignment_expression "pcVar21 = pcStack_160" (identifier "pcVar21") (= "=") (identifier "pcStack_160")) (; ";")) (expression_statement "pcStack_1c8 = pcVar4;" (assignment_expression "pcStack_1c8 = pcVar4" (identifier "pcStack_1c8") (= "=") (identifier "pcVar4")) (; ";")) (expression_statement "pcStack_19c = pcVar22;" (assignment_expression "pcStack_19c = pcVar22" (identifier "pcStack_19c") (= "=") (identifier "pcVar22")) (; ";")) (expression_statement "pcStack_198 = pcVar24;" (assignment_expression "pcStack_198 = pcVar24" (identifier "pcStack_198") (= "=") (identifier "pcVar24")) (; ";")) (expression_statement "piStack_190 = piVar5;" (assignment_expression "piStack_190 = piVar5" (identifier "piStack_190") (= "=") (identifier "piVar5")) (; ";")) (expression_statement "pcStack_18c = pcVar3;" (assignment_expression "pcStack_18c = pcVar3" (identifier "pcStack_18c") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "uStack_188 = uVar17;" (assignment_expression "uStack_188 = uVar17" (identifier "uStack_188") (= "=") (identifier "uVar17")) (; ";")) (expression_statement "puStack_184 = puVar19;" (assignment_expression "puStack_184 = puVar19" (identifier "puStack_184") (= "=") (identifier "puVar19")) (; ";")) (expression_statement "pcStack_180 = pcVar23;" (assignment_expression "pcStack_180 = pcVar23" (identifier "pcStack_180") (= "=") (identifier "pcVar23")) (; ";")) (expression_statement "pcStack_17c = pcVar26;" (assignment_expression "pcStack_17c = pcVar26" (identifier "pcStack_17c") (= "=") (identifier "pcVar26")) (; ";")) (if_statement "if (pcStack_164 == (code *)0x9) {\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }" (if "if") (parenthesized_expression "(pcStack_164 == (code *)0x9)" (( "(") (binary_expression "pcStack_164 == (code *)0x9" (identifier "pcStack_164") (== "==") (cast_expression "(code *)0x9" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9"))) () ")")) (compound_statement "{\n                pcVar4 = *(code **)(pcVar25 + 0x3d768c);\n                if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }\n                return pcVar4;\n              }" ({ "{") (expression_statement "pcVar4 = *(code **)(pcVar25 + 0x3d768c);" (assignment_expression "pcVar4 = *(code **)(pcVar25 + 0x3d768c)" (identifier "pcVar4") (= "=") (pointer_expression "*(code **)(pcVar25 + 0x3d768c)" (* "*") (cast_expression "(code **)(pcVar25 + 0x3d768c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar25 + 0x3d768c)" (( "(") (binary_expression "pcVar25 + 0x3d768c" (identifier "pcVar25") (+ "+") (number_literal "0x3d768c")) () ")"))))) (; ";")) (if_statement "if (pcStack_15c != (code *)0x0) {\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }" (if "if") (parenthesized_expression "(pcStack_15c != (code *)0x0)" (( "(") (binary_expression "pcStack_15c != (code *)0x0" (identifier "pcStack_15c") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  pcVar24 = (code *)0x0;\n                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);\n                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;\n                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);\n                  do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);\n                }" ({ "{") (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" (identifier "pcVar24") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar23 = *(code **)(pcVar25 + 0x3d7764);" (assignment_expression "pcVar23 = *(code **)(pcVar25 + 0x3d7764)" (identifier "pcVar23") (= "=") (pointer_expression "*(code **)(pcVar25 + 0x3d7764)" (* "*") (cast_expression "(code **)(pcVar25 + 0x3d7764)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar25 + 0x3d7764)" (( "(") (binary_expression "pcVar25 + 0x3d7764" (identifier "pcVar25") (+ "+") (number_literal "0x3d7764")) () ")"))))) (; ";")) (expression_statement "pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;" (assignment_expression "pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864" (identifier "pcStack_1b8") (= "=") (binary_expression "*(code **)(pcVar25 + 0x3d768c) + 0x1864" (pointer_expression "*(code **)(pcVar25 + 0x3d768c)" (* "*") (cast_expression "(code **)(pcVar25 + 0x3d768c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar25 + 0x3d768c)" (( "(") (binary_expression "pcVar25 + 0x3d768c" (identifier "pcVar25") (+ "+") (number_literal "0x3d768c")) () ")")))) (+ "+") (number_literal "0x1864"))) (; ";")) (expression_statement "puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);" (assignment_expression "puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c)" (identifier "puVar19") (= "=") (cast_expression "(uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c)" (( "(") (binary_expression "*(int *)(pcVar25 + 0x3d6ebc) + 0x546c" (pointer_expression "*(int *)(pcVar25 + 0x3d6ebc)" (* "*") (cast_expression "(int *)(pcVar25 + 0x3d6ebc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar25 + 0x3d6ebc)" (( "(") (binary_expression "pcVar25 + 0x3d6ebc" (identifier "pcVar25") (+ "+") (number_literal "0x3d6ebc")) () ")")))) (+ "+") (number_literal "0x546c")) () ")")))) (; ";")) (do_statement "do {\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  } while (pcStack_15c != pcVar24);" (do "do") (compound_statement "{\n                    if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }\nLAB_000ea724:\n                    pcVar24 = pcVar24 + 1;\n                    pcVar21 = pcVar21 + 8;\n                    pcVar4 = pcStack_15c;\n                  }" ({ "{") (if_statement "if (puVar18 == (uint *)0x0) {\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }\n                    else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }" (if "if") (parenthesized_expression "(puVar18 == (uint *)0x0)" (( "(") (binary_expression "puVar18 == (uint *)0x0" (identifier "puVar18") (== "==") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);\n                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);\n                      pcVar22 = (code *)((uint)pcVar3 >> 8);\n                      if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;\n                    }" ({ "{") (labeled_statement "LAB_000ea73c:\n                      uVar17 = *(uint *)(pcVar21 + 4);" (statement_identifier "LAB_000ea73c") (: ":") (expression_statement "uVar17 = *(uint *)(pcVar21 + 4);" (assignment_expression "uVar17 = *(uint *)(pcVar21 + 4)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(pcVar21 + 4)" (* "*") (cast_expression "(uint *)(pcVar21 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 4)" (( "(") (binary_expression "pcVar21 + 4" (identifier "pcVar21") (+ "+") (number_literal "4")) () ")"))))) (; ";"))) (expression_statement "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000);" (assignment_expression "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000)" (identifier "pcVar3") (= "=") (cast_expression "(code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000)" (( "(") (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10)" (( "(") (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>\n                                        0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" (( "(") (binary_expression "uVar17 >> 0x10" (identifier "uVar17") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" (( "(") (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *\n                                                0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" (( "(") (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" (( "(") (binary_expression "uVar17 & 0xff" (identifier "uVar17") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" (identifier "uVar17") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000"))) () ")")))) (; ";")) (expression_statement "pcVar22 = (code *)((uint)pcVar3 >> 8);" (assignment_expression "pcVar22 = (code *)((uint)pcVar3 >> 8)" (identifier "pcVar22") (= "=") (cast_expression "(code *)((uint)pcVar3 >> 8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)pcVar3 >> 8)" (( "(") (binary_expression "(uint)pcVar3 >> 8" (cast_expression "(uint)pcVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar3")) (>> ">>") (number_literal "8")) () ")")))) (; ";")) (if_statement "if (pcVar22 < pcStack_150) {\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }\n                      else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" (if "if") (parenthesized_expression "(pcVar22 < pcStack_150)" (( "(") (binary_expression "pcVar22 < pcStack_150" (identifier "pcVar22") (< "<") (identifier "pcStack_150")) () ")")) (compound_statement "{\n                        iVar2 = (int)pcVar22 * 0x10;\n                        pcVar4 = pcStack_1c8;\n                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;\n                        pcVar14 = pcVar15 + iVar2;\n                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));\n                        if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }\n                        uVar17 = (uint)pcVar3 & 0xff;\n                        pcVar4 = pcStack_1c8;\n                        if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }\n                        if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }\n                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }\n                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);\n                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;\n                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);\n                        (*pcVar4)(pcVar16,&uStack_1c0);\n                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" ({ "{") (expression_statement "iVar2 = (int)pcVar22 * 0x10;" (assignment_expression "iVar2 = (int)pcVar22 * 0x10" (identifier "iVar2") (= "=") (binary_expression "(int)pcVar22 * 0x10" (cast_expression "(int)pcVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar22")) (* "*") (number_literal "0x10"))) (; ";")) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" (identifier "pcVar4") (= "=") (identifier "pcStack_1c8")) (; ";")) (if_statement "if (pcVar15 == (code *)0x0) goto LAB_000eaad4;" (if "if") (parenthesized_expression "(pcVar15 == (code *)0x0)" (( "(") (binary_expression "pcVar15 == (code *)0x0" (identifier "pcVar15") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000eaad4;" (goto "goto") (statement_identifier "LAB_000eaad4") (; ";"))) (expression_statement "pcVar14 = pcVar15 + iVar2;" (assignment_expression "pcVar14 = pcVar15 + iVar2" (identifier "pcVar14") (= "=") (binary_expression "pcVar15 + iVar2" (identifier "pcVar15") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));" (assignment_expression "pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8))" (identifier "pcVar25") (= "=") (cast_expression "(code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8))" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8))" (( "(") (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff)" (( "(") (binary_expression "*(ushort *)(pcVar14 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" (* "*") (cast_expression "(ushort *)(pcVar14 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe)" (( "(") (binary_expression "pcVar14 + 0xe" (identifier "pcVar14") (+ "+") (number_literal "0xe")) () ")")))) (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (call_expression "(uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(ushort *)(pcVar14 + 0xe) >> 8)" (( "(") (binary_expression "*(ushort *)(pcVar14 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" (* "*") (cast_expression "(ushort *)(pcVar14 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe)" (( "(") (binary_expression "pcVar14 + 0xe" (identifier "pcVar14") (+ "+") (number_literal "0xe")) () ")")))) (>> ">>") (number_literal "8")) () ")")))) () ")")))) (; ";")) (if_statement "if (pcVar25 < (code *)0xff00) {\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }\n                        else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }" (if "if") (parenthesized_expression "(pcVar25 < (code *)0xff00)" (( "(") (binary_expression "pcVar25 < (code *)0xff00" (identifier "pcVar25") (< "<") (cast_expression "(code *)0xff00" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xff00"))) () ")")) (compound_statement "{\nLAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;\n                          pcVar4 = pcStack_1c8;\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;\n                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;\n                          cVar1 = pcVar14[0xc];\n                        }" ({ "{") (labeled_statement "LAB_000ea888:\n                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;" (statement_identifier "LAB_000ea888") (: ":") (if_statement "if (pcVar25 == (code *)0x0) goto LAB_000ea790;" (if "if") (parenthesized_expression "(pcVar25 == (code *)0x0)" (( "(") (binary_expression "pcVar25 == (code *)0x0" (identifier "pcVar25") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000ea790;" (goto "goto") (statement_identifier "LAB_000ea790") (; ";")))) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" (identifier "pcVar4") (= "=") (identifier "pcStack_1c8")) (; ";")) (if_statement "if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaab8;" (if "if") (parenthesized_expression "((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)" (( "(") (binary_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" (identifier "piVar7") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "pcVar25")) () ")")) (goto_statement "goto LAB_000eaab8;" (goto "goto") (statement_identifier "LAB_000eaab8") (; ";"))) (if_statement "if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;" (if "if") (parenthesized_expression "(*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + (int)pcVar25 * 4)" (* "*") (cast_expression "(int *)(piVar7[0xe] + (int)pcVar25 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xe] + (int)pcVar25 * 4)" (( "(") (binary_expression "piVar7[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar25")) (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000ea7b4;" (goto "goto") (statement_identifier "LAB_000ea7b4") (; ";"))) (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar14[0xc]" (identifier "pcVar14") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }" (else "else") (compound_statement "{\n                          if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }\nLAB_000ea790:\n                          cVar1 = pcVar14[0xc];\n                        }" ({ "{") (if_statement "if (pcVar25 == (code *)0xffff) {\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }" (if "if") (parenthesized_expression "(pcVar25 == (code *)0xffff)" (( "(") (binary_expression "pcVar25 == (code *)0xffff" (identifier "pcVar25") (== "==") (cast_expression "(code *)0xffff" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffff"))) () ")")) (compound_statement "{\n                            iVar11 = piVar7[0xc];\n                            pcStack_1b4 = pcVar3;\n                            pcStack_1b0 = pcVar22;\n                            iStack_1ac = iVar2;\n                            pcStack_1a8 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }\n                            uVar17 = (uint)pcStack_1b4;\n                            pcStack_1b4 = pcStack_1b0;\n                            pcVar4 = pcStack_1b0;\n                            pcStack_1b0 = (code *)uVar17;\n                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);\n                            pcVar3 = pcStack_1b0;\n                            pcVar22 = pcStack_1b4;\n                            iVar2 = iStack_1ac;\n                            pcVar14 = pcStack_1a8;\n                            goto LAB_000ea888;\n                          }" ({ "{") (expression_statement "iVar11 = piVar7[0xc];" (assignment_expression "iVar11 = piVar7[0xc]" (identifier "iVar11") (= "=") (subscript_expression "piVar7[0xc]" (identifier "piVar7") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "pcStack_1b4 = pcVar3;" (assignment_expression "pcStack_1b4 = pcVar3" (identifier "pcStack_1b4") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "pcStack_1b0 = pcVar22;" (assignment_expression "pcStack_1b0 = pcVar22" (identifier "pcStack_1b0") (= "=") (identifier "pcVar22")) (; ";")) (expression_statement "iStack_1ac = iVar2;" (assignment_expression "iStack_1ac = iVar2" (identifier "iStack_1ac") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "pcStack_1a8 = pcVar14;" (assignment_expression "pcStack_1a8 = pcVar14" (identifier "pcStack_1a8") (= "=") (identifier "pcVar14")) (; ";")) (if_statement "if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);\n                              piVar7[0xc] = iVar11;\n                            }" ({ "{") (expression_statement "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);" (assignment_expression "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar7 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar7 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar7 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x6c)" (( "(") (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar7,&uStack_1c0)" (( "(") (identifier "piVar7") (, ",") (pointer_expression "&uStack_1c0" (& "&") (identifier "uStack_1c0")) () ")")))) (; ";")) (expression_statement "piVar7[0xc] = iVar11;" (assignment_expression "piVar7[0xc] = iVar11" (subscript_expression "piVar7[0xc]" (identifier "piVar7") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar11")) (; ";")) (} "}"))) (expression_statement "uVar17 = (uint)pcStack_1b4;" (assignment_expression "uVar17 = (uint)pcStack_1b4" (identifier "uVar17") (= "=") (cast_expression "(uint)pcStack_1b4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcStack_1b4"))) (; ";")) (expression_statement "pcStack_1b4 = pcStack_1b0;" (assignment_expression "pcStack_1b4 = pcStack_1b0" (identifier "pcStack_1b4") (= "=") (identifier "pcStack_1b0")) (; ";")) (expression_statement "pcVar4 = pcStack_1b0;" (assignment_expression "pcVar4 = pcStack_1b0" (identifier "pcVar4") (= "=") (identifier "pcStack_1b0")) (; ";")) (expression_statement "pcStack_1b0 = (code *)uVar17;" (assignment_expression "pcStack_1b0 = (code *)uVar17" (identifier "pcStack_1b0") (= "=") (cast_expression "(code *)uVar17" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar17"))) (; ";")) (expression_statement "pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4);" (assignment_expression "pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4)" (identifier "pcVar25") (= "=") (cast_expression "(code *)(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_1c8 + -0x7790))\n                                                        (iVar11,piVar7,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_1c8 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_1c8 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_1c8 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x7790)" (( "(") (binary_expression "pcStack_1c8 + -0x7790" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar11,piVar7,pcVar4)" (( "(") (identifier "iVar11") (, ",") (identifier "piVar7") (, ",") (identifier "pcVar4") () ")"))))) (; ";")) (expression_statement "pcVar3 = pcStack_1b0;" (assignment_expression "pcVar3 = pcStack_1b0" (identifier "pcVar3") (= "=") (identifier "pcStack_1b0")) (; ";")) (expression_statement "pcVar22 = pcStack_1b4;" (assignment_expression "pcVar22 = pcStack_1b4" (identifier "pcVar22") (= "=") (identifier "pcStack_1b4")) (; ";")) (expression_statement "iVar2 = iStack_1ac;" (assignment_expression "iVar2 = iStack_1ac" (identifier "iVar2") (= "=") (identifier "iStack_1ac")) (; ";")) (expression_statement "pcVar14 = pcStack_1a8;" (assignment_expression "pcVar14 = pcStack_1a8" (identifier "pcVar14") (= "=") (identifier "pcStack_1a8")) (; ";")) (goto_statement "goto LAB_000ea888;" (goto "goto") (statement_identifier "LAB_000ea888") (; ";")) (} "}"))) (labeled_statement "LAB_000ea790:\n                          cVar1 = pcVar14[0xc];" (statement_identifier "LAB_000ea790") (: ":") (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar14[0xc]" (identifier "pcVar14") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (} "}")))) (expression_statement "uVar17 = (uint)pcVar3 & 0xff;" (assignment_expression "uVar17 = (uint)pcVar3 & 0xff" (identifier "uVar17") (= "=") (binary_expression "(uint)pcVar3 & 0xff" (cast_expression "(uint)pcVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar3")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" (identifier "pcVar4") (= "=") (identifier "pcStack_1c8")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;\n                          piVar5 = (int *)(piVar7[0x3a] + iVar2);\n                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }\n                          goto LAB_000eaa64;\n                        }" ({ "{") (if_statement "if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;" (if "if") (parenthesized_expression "(pcVar22 == (code *)0x0 && uVar17 == 0)" (( "(") (binary_expression "pcVar22 == (code *)0x0 && uVar17 == 0" (binary_expression "pcVar22 == (code *)0x0" (identifier "pcVar22") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (&& "&&") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0"))) () ")")) (goto_statement "goto LAB_000ea7b4;" (goto "goto") (statement_identifier "LAB_000ea7b4") (; ";"))) (expression_statement "piVar5 = (int *)(piVar7[0x3a] + iVar2);" (assignment_expression "piVar5 = (int *)(piVar7[0x3a] + iVar2)" (identifier "piVar5") (= "=") (cast_expression "(int *)(piVar7[0x3a] + iVar2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0x3a] + iVar2)" (( "(") (binary_expression "piVar7[0x3a] + iVar2" (subscript_expression "piVar7[0x3a]" (identifier "piVar7") ([ "[") (number_literal "0x3a") (] "]")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (if_statement "if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }" (if "if") (parenthesized_expression "(pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4))" (( "(") (binary_expression "pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" (identifier "pcVar22") (< "<") (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" (( "(") (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" (identifier "piVar7") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar7[0x3a]" (identifier "piVar7") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "4")) () ")")))) () ")")) (compound_statement "{\n                            iVar2 = *piVar5;\n                            if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }\n                            *piVar5 = -2;\n                            goto LAB_000ea704;\n                          }" ({ "{") (expression_statement "iVar2 = *piVar5;" (assignment_expression "iVar2 = *piVar5" (identifier "iVar2") (= "=") (pointer_expression "*piVar5" (* "*") (identifier "piVar5"))) (; ";")) (if_statement "if (iVar2 != 0) {\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                              pcVar4 = (code *)0x9;\n                              if (iVar2 != -2) goto LAB_000ea5b0;\n                            }" ({ "{") (expression_statement "iVar11 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_1c8 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x77f0)" (( "(") (binary_expression "pcStack_1c8 + -0x77f0" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = (code *)0x9;" (assignment_expression "pcVar4 = (code *)0x9" (identifier "pcVar4") (= "=") (cast_expression "(code *)0x9" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9"))) (; ";")) (if_statement "if (iVar2 != -2) goto LAB_000ea5b0;" (if "if") (parenthesized_expression "(iVar2 != -2)" (( "(") (binary_expression "iVar2 != -2" (identifier "iVar2") (!= "!=") (number_literal "-2")) () ")")) (goto_statement "goto LAB_000ea5b0;" (goto "goto") (statement_identifier "LAB_000ea5b0") (; ";"))) (} "}"))) (expression_statement "*piVar5 = -2;" (assignment_expression "*piVar5 = -2" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (= "=") (number_literal "-2")) (; ";")) (goto_statement "goto LAB_000ea704;" (goto "goto") (statement_identifier "LAB_000ea704") (; ";")) (} "}"))) (goto_statement "goto LAB_000eaa64;" (goto "goto") (statement_identifier "LAB_000eaa64") (; ";")) (} "}"))) (if_statement "if (uVar17 != 4) {\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }" (if "if") (parenthesized_expression "(uVar17 != 4)" (( "(") (binary_expression "uVar17 != 4" (identifier "uVar17") (!= "!=") (number_literal "4")) () ")")) (compound_statement "{\n                          pcStack_1b4 = pcVar25;\n                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);\n                          pcVar4 = pcStack_1c8;\n                          if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }\n                          goto switchD_000ea8f8_caseD_3;\n                        }" ({ "{") (expression_statement "pcStack_1b4 = pcVar25;" (assignment_expression "pcStack_1b4 = pcVar25" (identifier "pcStack_1b4") (= "=") (identifier "pcVar25")) (; ";")) (expression_statement "uVar17 = (*pcStack_1b8)(uVar17,piVar7);" (assignment_expression "uVar17 = (*pcStack_1b8)(uVar17,piVar7)" (identifier "uVar17") (= "=") (call_expression "(*pcStack_1b8)(uVar17,piVar7)" (parenthesized_expression "(*pcStack_1b8)" (( "(") (pointer_expression "*pcStack_1b8" (* "*") (identifier "pcStack_1b8")) () ")")) (argument_list "(uVar17,piVar7)" (( "(") (identifier "uVar17") (, ",") (identifier "piVar7") () ")")))) (; ";")) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" (identifier "pcVar4") (= "=") (identifier "pcStack_1c8")) (; ";")) (if_statement "if (uVar17 < 9) {\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" (if "if") (parenthesized_expression "(uVar17 < 9)" (( "(") (binary_expression "uVar17 < 9" (identifier "uVar17") (< "<") (number_literal "9")) () ")")) (compound_statement "{\n                    \n                    \n                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();\n                            return pcVar4;\n                          }" ({ "{") (expression_statement "pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();" (assignment_expression "pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))()" (identifier "pcVar4") (= "=") (cast_expression "(code *)(*(pcStack_1c8 + puVar19[uVar17]))()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(pcStack_1c8 + puVar19[uVar17]))()" (parenthesized_expression "(*(pcStack_1c8 + puVar19[uVar17]))" (( "(") (pointer_expression "*(pcStack_1c8 + puVar19[uVar17])" (* "*") (parenthesized_expression "(pcStack_1c8 + puVar19[uVar17])" (( "(") (binary_expression "pcStack_1c8 + puVar19[uVar17]" (identifier "pcStack_1c8") (+ "+") (subscript_expression "puVar19[uVar17]" (identifier "puVar19") ([ "[") (identifier "uVar17") (] "]"))) () ")"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (goto_statement "goto switchD_000ea8f8_caseD_3;" (goto "goto") (statement_identifier "switchD_000ea8f8_caseD_3") (; ";")) (} "}"))) (if_statement "if (*(code **)(*piVar7 + 0x60) == pcVar23) {\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }\n                        else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }" (if "if") (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == pcVar23)" (( "(") (binary_expression "*(code **)(*piVar7 + 0x60) == pcVar23" (pointer_expression "*(code **)(*piVar7 + 0x60)" (* "*") (cast_expression "(code **)(*piVar7 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x60)" (( "(") (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcVar23")) () ")")) (compound_statement "{\n                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;\n                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);\n                          pcStack_1b4 = pcVar20;\n                        }" ({ "{") (if_statement "if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)\n                          goto LAB_000eaa9c;" (if "if") (parenthesized_expression "((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)" (( "(") (binary_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25" (cast_expression "(code *)(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" (identifier "piVar7") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "pcVar25")) () ")")) (goto_statement "goto LAB_000eaa9c;" (goto "goto") (statement_identifier "LAB_000eaa9c") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar7[0xe] + (int)pcVar25 * 4)" (* "*") (cast_expression "(int *)(piVar7[0xe] + (int)pcVar25 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xe] + (int)pcVar25 * 4)" (( "(") (binary_expression "piVar7[0xe] + (int)pcVar25 * 4" (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "(int)pcVar25 * 4" (cast_expression "(int)pcVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar25")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "pcStack_1b4 = pcVar20;" (assignment_expression "pcStack_1b4 = pcVar20" (identifier "pcStack_1b4") (= "=") (identifier "pcVar20")) (; ";")) (} "}")) (else_clause "else {\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }" (else "else") (compound_statement "{\n                          pcStack_1b4 = pcVar20;\n                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);\n                        }" ({ "{") (expression_statement "pcStack_1b4 = pcVar20;" (assignment_expression "pcStack_1b4 = pcVar20" (identifier "pcStack_1b4") (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,pcVar25)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar7 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar7 + 0x60)" (* "*") (cast_expression "(code **)(*piVar7 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x60)" (( "(") (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar7,pcVar25)" (( "(") (identifier "piVar7") (, ",") (identifier "pcVar25") () ")")))) (; ";")) (} "}")))) (expression_statement "pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);" (assignment_expression "pcVar4 = *(code **)(pcStack_1c8 + -0x76e4)" (identifier "pcVar4") (= "=") (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" (* "*") (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x76e4)" (( "(") (binary_expression "pcStack_1c8 + -0x76e4" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x76e4")) () ")"))))) (; ";")) (expression_statement "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar2 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_)" (identifier "uStack_1c0") (= "=") (call_expression "CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_)" (identifier "CONCAT13") (argument_list "((char)pcStack_1b4,uStack_1c0._1_3_)" (( "(") (cast_expression "(char)pcStack_1b4" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "pcStack_1b4")) (, ",") (field_expression "uStack_1c0._1_3_" (identifier "uStack_1c0") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*pcVar4)(pcVar16,&uStack_1c0);" (call_expression "(*pcVar4)(pcVar16,&uStack_1c0)" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "(pcVar16,&uStack_1c0)" (( "(") (identifier "pcVar16") (, ",") (pointer_expression "&uStack_1c0" (& "&") (identifier "uStack_1c0")) () ")"))) (; ";")) (if_statement "if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;" (if "if") (parenthesized_expression "(pcStack_1b4 == (code *)&DAT_00000008)" (( "(") (binary_expression "pcStack_1b4 == (code *)&DAT_00000008" (identifier "pcStack_1b4") (== "==") (cast_expression "(code *)&DAT_00000008" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_00000008" (& "&") (identifier "DAT_00000008")))) () ")")) (goto_statement "goto LAB_000ea724;" (goto "goto") (statement_identifier "LAB_000ea724") (; ";"))) (expression_statement "iVar2 = *(int *)(pcVar16 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0xc)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar16 + 0xc)" (* "*") (cast_expression "(int *)(pcVar16 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xc)" (( "(") (binary_expression "pcVar16 + 0xc" (identifier "pcVar16") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" (else "else") (compound_statement "{\nLAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;\n                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                        iVar2 = *(int *)(pcVar16 + 0xc);\n                      }" ({ "{") (labeled_statement "LAB_000ea704:\n                        uStack_1c0 = uStack_1c0 & 0xffffff;" (statement_identifier "LAB_000ea704") (: ":") (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" (identifier "uStack_1c0") (= "=") (binary_expression "uStack_1c0 & 0xffffff" (identifier "uStack_1c0") (& "&") (number_literal "0xffffff"))) (; ";"))) (expression_statement "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e4))" (( "(") (pointer_expression "**(code **)(pcStack_1c8 + -0x76e4)" (* "*") (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" (* "*") (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x76e4)" (( "(") (binary_expression "pcStack_1c8 + -0x76e4" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x76e4")) () ")"))))) () ")")) (argument_list "(pcVar16,&uStack_1c0)" (( "(") (identifier "pcVar16") (, ",") (pointer_expression "&uStack_1c0" (& "&") (identifier "uStack_1c0")) () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar16 + 0xc);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0xc)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar16 + 0xc)" (* "*") (cast_expression "(int *)(pcVar16 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xc)" (( "(") (binary_expression "pcVar16 + 0xc" (identifier "pcVar16") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(int *)(pcVar16 + 0xc) = iVar2 + 1;" (assignment_expression "*(int *)(pcVar16 + 0xc) = iVar2 + 1" (pointer_expression "*(int *)(pcVar16 + 0xc)" (* "*") (cast_expression "(int *)(pcVar16 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xc)" (( "(") (binary_expression "pcVar16 + 0xc" (identifier "pcVar16") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "iVar2 + 1" (identifier "iVar2") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }" (else "else") (compound_statement "{\n                      uVar17 = *(uint *)pcVar21;\n                      uStack_1d0 = 0;\n                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                      if (iVar2 != 0) goto LAB_000ea73c;\nLAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);\n                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);\n                    }" ({ "{") (expression_statement "uVar17 = *(uint *)pcVar21;" (assignment_expression "uVar17 = *(uint *)pcVar21" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)pcVar21" (* "*") (cast_expression "(uint *)pcVar21" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar21")))) (; ";")) (expression_statement "uStack_1d0 = 0;" (assignment_expression "uStack_1d0 = 0" (identifier "uStack_1d0") (= "=") (number_literal "0")) (; ";")) (expression_statement "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (identifier "iStack_1cc") (= "=") (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" (( "(") (binary_expression "uVar17 >> 0x10" (identifier "uVar17") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" (( "(") (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" (( "(") (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" (( "(") (binary_expression "uVar17 & 0xff" (identifier "uVar17") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" (identifier "uVar17") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);" (assignment_expression "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_1c8 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_1c8 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_1c8 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x76e0)" (( "(") (binary_expression "pcStack_1c8 + -0x76e0" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(uStack_158,piVar7,uStack_168)" (( "(") (identifier "uStack_158") (, ",") (identifier "piVar7") (, ",") (identifier "uStack_168") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) goto LAB_000ea73c;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000ea73c;" (goto "goto") (statement_identifier "LAB_000ea73c") (; ";"))) (labeled_statement "LAB_000ea7b4:\n                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);" (statement_identifier "LAB_000ea7b4") (: ":") (expression_statement "uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_)" (identifier "uStack_1c0") (= "=") (call_expression "CONCAT13(8,uStack_1c0._1_3_)" (identifier "CONCAT13") (argument_list "(8,uStack_1c0._1_3_)" (( "(") (number_literal "8") (, ",") (field_expression "uStack_1c0._1_3_" (identifier "uStack_1c0") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e4))" (( "(") (pointer_expression "**(code **)(pcStack_1c8 + -0x76e4)" (* "*") (pointer_expression "*(code **)(pcStack_1c8 + -0x76e4)" (* "*") (cast_expression "(code **)(pcStack_1c8 + -0x76e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x76e4)" (( "(") (binary_expression "pcStack_1c8 + -0x76e4" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x76e4")) () ")"))))) () ")")) (argument_list "(pcVar16,&uStack_1c0)" (( "(") (identifier "pcVar16") (, ",") (pointer_expression "&uStack_1c0" (& "&") (identifier "uStack_1c0")) () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_000ea724:\n                    pcVar24 = pcVar24 + 1;" (statement_identifier "LAB_000ea724") (: ":") (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" (identifier "pcVar24") (= "=") (binary_expression "pcVar24 + 1" (identifier "pcVar24") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "pcVar21 = pcVar21 + 8;" (assignment_expression "pcVar21 = pcVar21 + 8" (identifier "pcVar21") (= "=") (binary_expression "pcVar21 + 8" (identifier "pcVar21") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "pcVar4 = pcStack_15c;" (assignment_expression "pcVar4 = pcStack_15c" (identifier "pcVar4") (= "=") (identifier "pcStack_15c")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcStack_15c != pcVar24)" (( "(") (binary_expression "pcStack_15c != pcVar24" (identifier "pcStack_15c") (!= "!=") (identifier "pcVar24")) () ")")) (; ";")) (} "}"))) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (if_statement "if (pcStack_164 == (code *)&DAT_00000004) {\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }" (if "if") (parenthesized_expression "(pcStack_164 == (code *)&DAT_00000004)" (( "(") (binary_expression "pcStack_164 == (code *)&DAT_00000004" (identifier "pcStack_164") (== "==") (cast_expression "(code *)&DAT_00000004" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_00000004" (& "&") (identifier "DAT_00000004")))) () ")")) (compound_statement "{\n                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);\n                if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }\n                pcVar20 = (code *)0x0;\n                pcVar24 = *(code **)(pcVar25 + 0x3d779c);\n                pcVar23 = (code *)&DAT_00000008;\n                puVar19 = &uStack_1c0;\nLAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }\n                pcVar4 = pcStack_1c8;\n                uVar17 = *(uint *)(pcVar21 + 4);\n                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);\n                pcVar22 = (code *)((uint)pcVar3 >> 8);\n                if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }\n                iVar2 = (int)pcVar22 * 0x10;\n                if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }\n                (**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);\nLAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);\n              }" ({ "{") (expression_statement "pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);" (assignment_expression "pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764)" (identifier "pcStack_1b8") (= "=") (pointer_expression "*(code **)(pcVar25 + 0x3d7764)" (* "*") (cast_expression "(code **)(pcVar25 + 0x3d7764)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar25 + 0x3d7764)" (( "(") (binary_expression "pcVar25 + 0x3d7764" (identifier "pcVar25") (+ "+") (number_literal "0x3d7764")) () ")"))))) (; ";")) (if_statement "if (pcStack_15c == (code *)0x0) {\n                  return pcStack_1b8;\n                }" (if "if") (parenthesized_expression "(pcStack_15c == (code *)0x0)" (( "(") (binary_expression "pcStack_15c == (code *)0x0" (identifier "pcStack_15c") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  return pcStack_1b8;\n                }" ({ "{") (return_statement "return pcStack_1b8;" (return "return") (identifier "pcStack_1b8") (; ";")) (} "}"))) (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" (identifier "pcVar20") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar24 = *(code **)(pcVar25 + 0x3d779c);" (assignment_expression "pcVar24 = *(code **)(pcVar25 + 0x3d779c)" (identifier "pcVar24") (= "=") (pointer_expression "*(code **)(pcVar25 + 0x3d779c)" (* "*") (cast_expression "(code **)(pcVar25 + 0x3d779c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar25 + 0x3d779c)" (( "(") (binary_expression "pcVar25 + 0x3d779c" (identifier "pcVar25") (+ "+") (number_literal "0x3d779c")) () ")"))))) (; ";")) (expression_statement "pcVar23 = (code *)&DAT_00000008;" (assignment_expression "pcVar23 = (code *)&DAT_00000008" (identifier "pcVar23") (= "=") (cast_expression "(code *)&DAT_00000008" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_00000008" (& "&") (identifier "DAT_00000008")))) (; ";")) (expression_statement "puVar19 = &uStack_1c0;" (assignment_expression "puVar19 = &uStack_1c0" (identifier "puVar19") (= "=") (pointer_expression "&uStack_1c0" (& "&") (identifier "uStack_1c0"))) (; ";")) (labeled_statement "LAB_000ea478:\n                while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }" (statement_identifier "LAB_000ea478") (: ":") (while_statement "while (puVar18 != (uint *)0x0) {\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }" (while "while") (parenthesized_expression "(puVar18 != (uint *)0x0)" (( "(") (binary_expression "puVar18 != (uint *)0x0" (identifier "puVar18") (!= "!=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  uVar17 = *(uint *)pcVar21;\n                  uStack_1d0 = 0;\n                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;\n                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);\n                  if (iVar2 != 0) break;\nLAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);\n                  (*pcVar24)(pcVar16,puVar19);\n                  pcVar20 = pcVar20 + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                }" ({ "{") (expression_statement "uVar17 = *(uint *)pcVar21;" (assignment_expression "uVar17 = *(uint *)pcVar21" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)pcVar21" (* "*") (cast_expression "(uint *)pcVar21" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar21")))) (; ";")) (expression_statement "uStack_1d0 = 0;" (assignment_expression "uStack_1d0 = 0" (identifier "uStack_1d0") (= "=") (number_literal "0")) (; ";")) (expression_statement "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;" (assignment_expression "iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (identifier "iStack_1cc") (= "=") (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" (( "(") (binary_expression "uVar17 >> 0x10" (identifier "uVar17") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" (( "(") (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" (( "(") (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" (( "(") (binary_expression "uVar17 & 0xff" (identifier "uVar17") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" (identifier "uVar17") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);" (assignment_expression "iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_1c8 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_1c8 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_1c8 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x76e0)" (( "(") (binary_expression "pcStack_1c8 + -0x76e0" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(uStack_158,piVar7,uStack_168)" (( "(") (identifier "uStack_158") (, ",") (identifier "piVar7") (, ",") (identifier "uStack_168") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) break;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_000ea4f4:\n                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);" (statement_identifier "LAB_000ea4f4") (: ":") (expression_statement "uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_)" (identifier "uStack_1c0") (= "=") (call_expression "CONCAT13((char)pcVar23,uStack_1c0._1_3_)" (identifier "CONCAT13") (argument_list "((char)pcVar23,uStack_1c0._1_3_)" (( "(") (cast_expression "(char)pcVar23" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "pcVar23")) (, ",") (field_expression "uStack_1c0._1_3_" (identifier "uStack_1c0") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar16,puVar19)" (( "(") (identifier "pcVar16") (, ",") (identifier "puVar19") () ")"))) (; ";")) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar21 = pcVar21 + 0xc;" (assignment_expression "pcVar21 = pcVar21 + 0xc" (identifier "pcVar21") (= "=") (binary_expression "pcVar21 + 0xc" (identifier "pcVar21") (+ "+") (number_literal "0xc"))) (; ";")) (if_statement "if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }" (if "if") (parenthesized_expression "(pcStack_15c == pcVar20)" (( "(") (binary_expression "pcStack_15c == pcVar20" (identifier "pcStack_15c") (== "==") (identifier "pcVar20")) () ")")) (compound_statement "{\n                    return pcStack_15c;\n                  }" ({ "{") (return_statement "return pcStack_15c;" (return "return") (identifier "pcStack_15c") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" (identifier "pcVar4") (= "=") (identifier "pcStack_1c8")) (; ";")) (expression_statement "uVar17 = *(uint *)(pcVar21 + 4);" (assignment_expression "uVar17 = *(uint *)(pcVar21 + 4)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(pcVar21 + 4)" (* "*") (cast_expression "(uint *)(pcVar21 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 4)" (( "(") (binary_expression "pcVar21 + 4" (identifier "pcVar21") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);" (assignment_expression "pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000)" (identifier "pcVar3") (= "=") (cast_expression "(code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000)" (( "(") (binary_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +\n                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "(((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10)" (( "(") (binary_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10" (parenthesized_expression "((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10)" (( "(") (binary_expression "(uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10" (binary_expression "(uVar17 >> 0x10) << 0x18" (parenthesized_expression "(uVar17 >> 0x10)" (( "(") (binary_expression "uVar17 >> 0x10" (identifier "uVar17") (>> ">>") (number_literal "0x10")) () ")")) (<< "<<") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 >> 0x18) << 0x10" (parenthesized_expression "(uVar17 >> 0x18)" (( "(") (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) () ")")) (<< "<<") (number_literal "0x10"))) () ")")) (>> ">>") (number_literal "0x10")) () ")")) (+ "+") (binary_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000" (parenthesized_expression "((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff)" (( "(") (binary_expression "(uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff" (binary_expression "(uVar17 & 0xff) << 8" (parenthesized_expression "(uVar17 & 0xff)" (( "(") (binary_expression "uVar17 & 0xff" (identifier "uVar17") (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar17 >> 8 & 0xff" (binary_expression "uVar17 >> 8" (identifier "uVar17") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) () ")")) (* "*") (number_literal "0x10000"))) () ")")))) (; ";")) (expression_statement "pcVar22 = (code *)((uint)pcVar3 >> 8);" (assignment_expression "pcVar22 = (code *)((uint)pcVar3 >> 8)" (identifier "pcVar22") (= "=") (cast_expression "(code *)((uint)pcVar3 >> 8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)pcVar3 >> 8)" (( "(") (binary_expression "(uint)pcVar3 >> 8" (cast_expression "(uint)pcVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar3")) (>> ">>") (number_literal "8")) () ")")))) (; ";")) (if_statement "if (pcStack_150 <= pcVar22) {\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }" (if "if") (parenthesized_expression "(pcStack_150 <= pcVar22)" (( "(") (binary_expression "pcStack_150 <= pcVar22" (identifier "pcStack_150") (<= "<=") (identifier "pcVar22")) () ")")) (compound_statement "{\n                  uStack_1c0 = uStack_1c0 & 0xffffff;\n                  (*pcVar24)(pcVar16,puVar19);\nLAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;\n                  pcVar21 = pcVar21 + 0xc;\n                  if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }\n                  goto LAB_000ea478;\n                }" ({ "{") (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" (identifier "uStack_1c0") (= "=") (binary_expression "uStack_1c0 & 0xffffff" (identifier "uStack_1c0") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar16,puVar19)" (( "(") (identifier "pcVar16") (, ",") (identifier "puVar19") () ")"))) (; ";")) (labeled_statement "LAB_000ea45c:\n                  pcVar20 = pcVar20 + 1;" (statement_identifier "LAB_000ea45c") (: ":") (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "*(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;" (assignment_expression "*(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1" (pointer_expression "*(int *)(pcVar16 + 0xc)" (* "*") (cast_expression "(int *)(pcVar16 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xc)" (( "(") (binary_expression "pcVar16 + 0xc" (identifier "pcVar16") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "*(int *)(pcVar16 + 0xc) + 1" (pointer_expression "*(int *)(pcVar16 + 0xc)" (* "*") (cast_expression "(int *)(pcVar16 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0xc)" (( "(") (binary_expression "pcVar16 + 0xc" (identifier "pcVar16") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar21 = pcVar21 + 0xc;" (assignment_expression "pcVar21 = pcVar21 + 0xc" (identifier "pcVar21") (= "=") (binary_expression "pcVar21 + 0xc" (identifier "pcVar21") (+ "+") (number_literal "0xc"))) (; ";")) (if_statement "if (pcStack_15c == pcVar20) {\n                    return pcStack_15c;\n                  }" (if "if") (parenthesized_expression "(pcStack_15c == pcVar20)" (( "(") (binary_expression "pcStack_15c == pcVar20" (identifier "pcStack_15c") (== "==") (identifier "pcVar20")) () ")")) (compound_statement "{\n                    return pcStack_15c;\n                  }" ({ "{") (return_statement "return pcStack_15c;" (return "return") (identifier "pcStack_15c") (; ";")) (} "}"))) (goto_statement "goto LAB_000ea478;" (goto "goto") (statement_identifier "LAB_000ea478") (; ";")) (} "}"))) (expression_statement "iVar2 = (int)pcVar22 * 0x10;" (assignment_expression "iVar2 = (int)pcVar22 * 0x10" (identifier "iVar2") (= "=") (binary_expression "(int)pcVar22 * 0x10" (cast_expression "(int)pcVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar22")) (* "*") (number_literal "0x10"))) (; ";")) (if_statement "if (pcVar15 != (code *)0x0) {\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }" (if "if") (parenthesized_expression "(pcVar15 != (code *)0x0)" (( "(") (binary_expression "pcVar15 != (code *)0x0" (identifier "pcVar15") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  pcVar14 = pcVar15 + iVar2;\n                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);\n                  if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }\n                  pcVar4 = pcStack_1c8;\n                  if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  goto LAB_000ea45c;\n                }" ({ "{") (expression_statement "pcVar14 = pcVar15 + iVar2;" (assignment_expression "pcVar14 = pcVar15 + iVar2" (identifier "pcVar14") (= "=") (binary_expression "pcVar15 + iVar2" (identifier "pcVar15") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);" (assignment_expression "uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (identifier "uVar17") (= "=") (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |\n                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (binary_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff) << 8" (parenthesized_expression "(*(ushort *)(pcVar14 + 0xe) & 0xff)" (( "(") (binary_expression "*(ushort *)(pcVar14 + 0xe) & 0xff" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" (* "*") (cast_expression "(ushort *)(pcVar14 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe)" (( "(") (binary_expression "pcVar14 + 0xe" (identifier "pcVar14") (+ "+") (number_literal "0xe")) () ")")))) (& "&") (number_literal "0xff")) () ")")) (<< "<<") (number_literal "8")) (| "|") (call_expression "(uint)(*(ushort *)(pcVar14 + 0xe) >> 8)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(ushort *)(pcVar14 + 0xe) >> 8)" (( "(") (binary_expression "*(ushort *)(pcVar14 + 0xe) >> 8" (pointer_expression "*(ushort *)(pcVar14 + 0xe)" (* "*") (cast_expression "(ushort *)(pcVar14 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe)" (( "(") (binary_expression "pcVar14 + 0xe" (identifier "pcVar14") (+ "+") (number_literal "0xe")) () ")")))) (>> ">>") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (uVar17 < 0xff00) {\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }\n                  else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }" (if "if") (parenthesized_expression "(uVar17 < 0xff00)" (( "(") (binary_expression "uVar17 < 0xff00" (identifier "uVar17") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;\n                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                    pcVar4 = pcStack_1c8;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;\n                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;\n                    cVar1 = pcVar14[0xc];\n                  }" ({ "{") (labeled_statement "LAB_000ea62c:\n                    if (uVar17 == 0) goto LAB_000ea4d4;" (statement_identifier "LAB_000ea62c") (: ":") (if_statement "if (uVar17 == 0) goto LAB_000ea4d4;" (if "if") (parenthesized_expression "(uVar17 == 0)" (( "(") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000ea4d4;" (goto "goto") (statement_identifier "LAB_000ea4d4") (; ";")))) (expression_statement "iVar11 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_1c8 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x77f0)" (( "(") (binary_expression "pcStack_1c8 + -0x77f0" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" (identifier "pcVar4") (= "=") (identifier "pcStack_1c8")) (; ";")) (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;" (if "if") (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17)" (( "(") (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" (identifier "piVar7") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar17")) () ")")) (goto_statement "goto LAB_000eaabc;" (goto "goto") (statement_identifier "LAB_000eaabc") (; ";"))) (if_statement "if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;" (if "if") (parenthesized_expression "(*(int *)(piVar7[0xe] + uVar17 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar7[0xe] + uVar17 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + uVar17 * 4)" (* "*") (cast_expression "(int *)(piVar7[0xe] + uVar17 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xe] + uVar17 * 4)" (( "(") (binary_expression "piVar7[0xe] + uVar17 * 4" (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar17 * 4" (identifier "uVar17") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000ea4f4;" (goto "goto") (statement_identifier "LAB_000ea4f4") (; ";"))) (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar14[0xc]" (identifier "pcVar14") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }" (else "else") (compound_statement "{\n                    if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }\nLAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];\n                  }" ({ "{") (if_statement "if (uVar17 == 0xffff) {\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }" (if "if") (parenthesized_expression "(uVar17 == 0xffff)" (( "(") (binary_expression "uVar17 == 0xffff" (identifier "uVar17") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                      iVar11 = piVar7[0xc];\n                      pcStack_1b4 = pcVar3;\n                      pcStack_1b0 = pcVar22;\n                      iStack_1ac = iVar2;\n                      pcStack_1a8 = pcVar14;\n                      if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }\n                      uVar17 = (uint)pcStack_1b4;\n                      pcStack_1b4 = pcStack_1b0;\n                      pcVar4 = pcStack_1b0;\n                      pcStack_1b0 = (code *)uVar17;\n                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);\n                      pcVar3 = pcStack_1b0;\n                      pcVar22 = pcStack_1b4;\n                      iVar2 = iStack_1ac;\n                      pcVar14 = pcStack_1a8;\n                      goto LAB_000ea62c;\n                    }" ({ "{") (expression_statement "iVar11 = piVar7[0xc];" (assignment_expression "iVar11 = piVar7[0xc]" (identifier "iVar11") (= "=") (subscript_expression "piVar7[0xc]" (identifier "piVar7") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "pcStack_1b4 = pcVar3;" (assignment_expression "pcStack_1b4 = pcVar3" (identifier "pcStack_1b4") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "pcStack_1b0 = pcVar22;" (assignment_expression "pcStack_1b0 = pcVar22" (identifier "pcStack_1b0") (= "=") (identifier "pcVar22")) (; ";")) (expression_statement "iStack_1ac = iVar2;" (assignment_expression "iStack_1ac = iVar2" (identifier "iStack_1ac") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "pcStack_1a8 = pcVar14;" (assignment_expression "pcStack_1a8 = pcVar14" (identifier "pcStack_1a8") (= "=") (identifier "pcVar14")) (; ";")) (if_statement "if (iVar11 == 0) {\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar11;\n                      }" ({ "{") (expression_statement "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);" (assignment_expression "iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar7 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar7 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar7 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x6c)" (( "(") (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar7)" (( "(") (identifier "piVar7") () ")")))) (; ";")) (expression_statement "piVar7[0xc] = iVar11;" (assignment_expression "piVar7[0xc] = iVar11" (subscript_expression "piVar7[0xc]" (identifier "piVar7") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar11")) (; ";")) (} "}"))) (expression_statement "uVar17 = (uint)pcStack_1b4;" (assignment_expression "uVar17 = (uint)pcStack_1b4" (identifier "uVar17") (= "=") (cast_expression "(uint)pcStack_1b4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcStack_1b4"))) (; ";")) (expression_statement "pcStack_1b4 = pcStack_1b0;" (assignment_expression "pcStack_1b4 = pcStack_1b0" (identifier "pcStack_1b4") (= "=") (identifier "pcStack_1b0")) (; ";")) (expression_statement "pcVar4 = pcStack_1b0;" (assignment_expression "pcVar4 = pcStack_1b0" (identifier "pcVar4") (= "=") (identifier "pcStack_1b0")) (; ";")) (expression_statement "pcStack_1b0 = (code *)uVar17;" (assignment_expression "pcStack_1b0 = (code *)uVar17" (identifier "pcStack_1b0") (= "=") (cast_expression "(code *)uVar17" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar17"))) (; ";")) (expression_statement "uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);" (assignment_expression "uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4)" (identifier "uVar17") (= "=") (call_expression "(**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_1c8 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_1c8 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_1c8 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x7790)" (( "(") (binary_expression "pcStack_1c8 + -0x7790" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar11,piVar7,pcVar4)" (( "(") (identifier "iVar11") (, ",") (identifier "piVar7") (, ",") (identifier "pcVar4") () ")")))) (; ";")) (expression_statement "pcVar3 = pcStack_1b0;" (assignment_expression "pcVar3 = pcStack_1b0" (identifier "pcVar3") (= "=") (identifier "pcStack_1b0")) (; ";")) (expression_statement "pcVar22 = pcStack_1b4;" (assignment_expression "pcVar22 = pcStack_1b4" (identifier "pcVar22") (= "=") (identifier "pcStack_1b4")) (; ";")) (expression_statement "iVar2 = iStack_1ac;" (assignment_expression "iVar2 = iStack_1ac" (identifier "iVar2") (= "=") (identifier "iStack_1ac")) (; ";")) (expression_statement "pcVar14 = pcStack_1a8;" (assignment_expression "pcVar14 = pcStack_1a8" (identifier "pcVar14") (= "=") (identifier "pcStack_1a8")) (; ";")) (goto_statement "goto LAB_000ea62c;" (goto "goto") (statement_identifier "LAB_000ea62c") (; ";")) (} "}"))) (labeled_statement "LAB_000ea4d4:\n                    cVar1 = pcVar14[0xc];" (statement_identifier "LAB_000ea4d4") (: ":") (expression_statement "cVar1 = pcVar14[0xc];" (assignment_expression "cVar1 = pcVar14[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar14[0xc]" (identifier "pcVar14") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (} "}")))) (expression_statement "pcVar4 = pcStack_1c8;" (assignment_expression "pcVar4 = pcStack_1c8" (identifier "pcVar4") (= "=") (identifier "pcStack_1c8")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }\n                  else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" ({ "{") (if_statement "if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }\n                    else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" (if "if") (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == pcStack_1b8)" (( "(") (binary_expression "*(code **)(*piVar7 + 0x60) == pcStack_1b8" (pointer_expression "*(code **)(*piVar7 + 0x60)" (* "*") (cast_expression "(code **)(*piVar7 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x60)" (( "(") (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcStack_1b8")) () ")")) (compound_statement "{\n                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;\n                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" ({ "{") (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;" (if "if") (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17)" (( "(") (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" (identifier "piVar7") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar17")) () ")")) (goto_statement "goto LAB_000eaa9c;" (goto "goto") (statement_identifier "LAB_000eaa9c") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar7[0xe] + uVar17 * 4)" (* "*") (cast_expression "(int *)(piVar7[0xe] + uVar17 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xe] + uVar17 * 4)" (( "(") (binary_expression "piVar7[0xe] + uVar17 * 4" (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar17 * 4" (identifier "uVar17") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" (else "else") (compound_statement "{\n                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);\n                      uVar17 = *(uint *)(iVar2 + 0x98);\n                    }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,uVar17)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar7 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar7 + 0x60)" (* "*") (cast_expression "(code **)(*piVar7 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x60)" (( "(") (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar7,uVar17)" (( "(") (identifier "piVar7") (, ",") (identifier "uVar17") () ")")))) (; ";")) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "uVar17 & 0x7fffffff | 0x80000000" (binary_expression "uVar17 & 0x7fffffff" (identifier "uVar17") (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);" (assignment_expression "uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_)" (identifier "uStack_1c0") (= "=") (call_expression "CONCAT13(1,uStack_1c0._1_3_)" (identifier "CONCAT13") (argument_list "(1,uStack_1c0._1_3_)" (( "(") (number_literal "1") (, ",") (field_expression "uStack_1c0._1_3_" (identifier "uStack_1c0") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar16,puVar19)" (( "(") (identifier "pcVar16") (, ",") (identifier "puVar19") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" (else "else") (compound_statement "{\n                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;\n                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);\n                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;\n                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }\n                    *(int *)pcVar14 = -2;\n                    uStack_1c0 = uStack_1c0 & 0xffffff;\n                    (*pcVar24)(pcVar16,puVar19);\n                  }" ({ "{") (if_statement "if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;" (if "if") (parenthesized_expression "(((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0)" (( "(") (binary_expression "((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0" (binary_expression "((uint)pcVar3 & 0xff) == 0" (parenthesized_expression "((uint)pcVar3 & 0xff)" (( "(") (binary_expression "(uint)pcVar3 & 0xff" (cast_expression "(uint)pcVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar3")) (& "&") (number_literal "0xff")) () ")")) (== "==") (number_literal "0")) (&& "&&") (binary_expression "pcVar22 == (code *)0x0" (identifier "pcVar22") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) () ")")) (goto_statement "goto LAB_000ea4f4;" (goto "goto") (statement_identifier "LAB_000ea4f4") (; ";"))) (expression_statement "pcVar14 = (code *)(piVar7[0x3a] + iVar2);" (assignment_expression "pcVar14 = (code *)(piVar7[0x3a] + iVar2)" (identifier "pcVar14") (= "=") (cast_expression "(code *)(piVar7[0x3a] + iVar2)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0x3a] + iVar2)" (( "(") (binary_expression "piVar7[0x3a] + iVar2" (subscript_expression "piVar7[0x3a]" (identifier "piVar7") ([ "[") (number_literal "0x3a") (] "]")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (if_statement "if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;" (if "if") (parenthesized_expression "((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22)" (( "(") (binary_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22" (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" (( "(") (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" (identifier "piVar7") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar7[0x3a]" (identifier "piVar7") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "4")) () ")"))) (<= "<=") (identifier "pcVar22")) () ")")) (goto_statement "goto LAB_000eaa64;" (goto "goto") (statement_identifier "LAB_000eaa64") (; ";"))) (if_statement "if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }" (if "if") (parenthesized_expression "((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2))" (( "(") (binary_expression "(*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)" (parenthesized_expression "(*(int *)pcVar14 != 0)" (( "(") (binary_expression "*(int *)pcVar14 != 0" (pointer_expression "*(int *)pcVar14" (* "*") (cast_expression "(int *)pcVar14" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar14"))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)pcVar14 != -2)" (( "(") (binary_expression "*(int *)pcVar14 != -2" (pointer_expression "*(int *)pcVar14" (* "*") (cast_expression "(int *)pcVar14" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar14"))) (!= "!=") (number_literal "-2")) () ")"))) () ")")) (compound_statement "{\n                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);\n                      pcVar4 = pcVar20;\nLAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);\n                      pcVar20 = pcVar4;\n                    }" ({ "{") (expression_statement "iVar11 = *(int *)(pcStack_1c8 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_1c8 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x77f0)" (( "(") (binary_expression "pcStack_1c8 + -0x77f0" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcVar20;" (assignment_expression "pcVar4 = pcVar20" (identifier "pcVar4") (= "=") (identifier "pcVar20")) (; ";")) (labeled_statement "LAB_000ea5b0:\n                      (**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);" (statement_identifier "LAB_000ea5b0") (: ":") (expression_statement "(**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);" (call_expression "(**(code **)(pcStack_1c8 + -0x7810))\n                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_1c8 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_1c8 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_1c8 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x7810)" (( "(") (binary_expression "pcStack_1c8 + -0x7810" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0)" (( "(") (binary_expression "*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_1c8 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_1c8 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x7fc4)" (( "(") (binary_expression "pcStack_1c8 + -0x7fc4" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x71f") (, ",") (binary_expression "iVar11 + -0x48c0" (identifier "iVar11") (+ "+") (number_literal "-0x48c0")) () ")"))) (; ";"))) (expression_statement "pcVar20 = pcVar4;" (assignment_expression "pcVar20 = pcVar4" (identifier "pcVar20") (= "=") (identifier "pcVar4")) (; ";")) (} "}"))) (expression_statement "*(int *)pcVar14 = -2;" (assignment_expression "*(int *)pcVar14 = -2" (pointer_expression "*(int *)pcVar14" (* "*") (cast_expression "(int *)pcVar14" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar14"))) (= "=") (number_literal "-2")) (; ";")) (expression_statement "uStack_1c0 = uStack_1c0 & 0xffffff;" (assignment_expression "uStack_1c0 = uStack_1c0 & 0xffffff" (identifier "uStack_1c0") (= "=") (binary_expression "uStack_1c0 & 0xffffff" (identifier "uStack_1c0") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar24)(pcVar16,puVar19);" (call_expression "(*pcVar24)(pcVar16,puVar19)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar16,puVar19)" (( "(") (identifier "pcVar16") (, ",") (identifier "puVar19") () ")"))) (; ";")) (} "}")))) (goto_statement "goto LAB_000ea45c;" (goto "goto") (statement_identifier "LAB_000ea45c") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);" (call_expression "(**(code **)(pcStack_1c8 + -0x7810))\n                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938)" (parenthesized_expression "(**(code **)(pcStack_1c8 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_1c8 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_1c8 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_1c8 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x7810)" (( "(") (binary_expression "pcStack_1c8 + -0x7810" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,\n                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938)" (( "(") (binary_expression "*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_1c8 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_1c8 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x7fc4)" (( "(") (binary_expression "pcStack_1c8 + -0x7fc4" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (binary_expression "*(int *)(pcStack_1c8 + -0x77f0) + -0x4938" (pointer_expression "*(int *)(pcStack_1c8 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_1c8 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1c8 + -0x77f0)" (( "(") (binary_expression "pcStack_1c8 + -0x77f0" (identifier "pcStack_1c8") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x4938")) () ")"))) (; ";")) (labeled_statement "LAB_000eaa64:\n                (**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);" (statement_identifier "LAB_000eaa64") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                           *(int *)(pcVar4 + -0x77f0) + -0x489c)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x8e3") (, ",") (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x489c" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x489c")) () ")"))) (; ";"))) (} "}"))) (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,\n                         *(int *)(pcVar4 + -0x77f0) + -0x48f0)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x3588")) (, ",") (number_literal "0x279c") (, ",") (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x48f0" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x48f0")) () ")"))) (; ";")) (labeled_statement "LAB_000eaa9c:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);" (statement_identifier "LAB_000eaa9c") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                         *(int *)(pcVar4 + -0x77f0) + -0x33a0)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x5c8") (, ",") (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x33a0")) () ")"))) (; ";"))) (labeled_statement "LAB_000eaab8:\n              iVar11 = *(int *)(pcVar4 + -0x77f0);" (statement_identifier "LAB_000eaab8") (: ":") (expression_statement "iVar11 = *(int *)(pcVar4 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcVar4 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";"))) (labeled_statement "LAB_000eaabc:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);" (statement_identifier "LAB_000eaabc") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x50b") (, ",") (binary_expression "iVar11 + -0x34dc" (identifier "iVar11") (+ "+") (number_literal "-0x34dc")) () ")"))) (; ";"))) (labeled_statement "LAB_000eaad4:\n              (**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);" (statement_identifier "LAB_000eaad4") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4908)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4908" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x4908")) () ")"))) (; ";"))) (labeled_statement "switchD_000ea8f8_caseD_3:\n              pcVar14 = *(code **)(pcVar4 + -0x7810);" (statement_identifier "switchD_000ea8f8_caseD_3") (: ":") (expression_statement "pcVar14 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar14 = *(code **)(pcVar4 + -0x7810)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) (; ";"))) (expression_statement "pcVar25 = FUN_000eab0c;" (assignment_expression "pcVar25 = FUN_000eab0c" (identifier "pcVar25") (= "=") (identifier "FUN_000eab0c")) (; ";")) (expression_statement "(*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920);" (call_expression "(*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,\n                         *(int *)(pcVar4 + -0x77f0) + -0x4920)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x276") (, ",") (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4920" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x4920")) () ")"))) (; ";")) (expression_statement "pcVar22 = pcStack_1b0;" (assignment_expression "pcVar22 = pcStack_1b0" (identifier "pcVar22") (= "=") (identifier "pcStack_1b0")) (; ";")) (expression_statement "pcVar3 = pcStack_1b4;" (assignment_expression "pcVar3 = pcStack_1b4" (identifier "pcVar3") (= "=") (identifier "pcStack_1b4")) (; ";")) (expression_statement "pcVar4 = pcVar14 + 0x3de734;" (assignment_expression "pcVar4 = pcVar14 + 0x3de734" (identifier "pcVar4") (= "=") (binary_expression "pcVar14 + 0x3de734" (identifier "pcVar14") (+ "+") (number_literal "0x3de734"))) (; ";")) (expression_statement "pcStack_1fc = pcVar15;" (assignment_expression "pcStack_1fc = pcVar15" (identifier "pcStack_1fc") (= "=") (identifier "pcVar15")) (; ";")) (expression_statement "pcStack_208 = pcVar16;" (assignment_expression "pcStack_208 = pcVar16" (identifier "pcStack_208") (= "=") (identifier "pcVar16")) (; ";")) (expression_statement "uVar17 = (uint)bStack_1b9;" (assignment_expression "uVar17 = (uint)bStack_1b9" (identifier "uVar17") (= "=") (cast_expression "(uint)bStack_1b9" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bStack_1b9"))) (; ";")) (expression_statement "piVar5 = piVar13;" (assignment_expression "piVar5 = piVar13" (identifier "piVar5") (= "=") (identifier "piVar13")) (; ";")) (expression_statement "pcVar15 = pcStack_1c8;" (assignment_expression "pcVar15 = pcStack_1c8" (identifier "pcVar15") (= "=") (identifier "pcStack_1c8")) (; ";")) (expression_statement "pcStack_228 = pcVar4;" (assignment_expression "pcStack_228 = pcVar4" (identifier "pcStack_228") (= "=") (identifier "pcVar4")) (; ";")) (expression_statement "pcStack_204 = pcVar21;" (assignment_expression "pcStack_204 = pcVar21" (identifier "pcStack_204") (= "=") (identifier "pcVar21")) (; ";")) (expression_statement "pcStack_200 = pcVar24;" (assignment_expression "pcStack_200 = pcVar24" (identifier "pcStack_200") (= "=") (identifier "pcVar24")) (; ";")) (expression_statement "piStack_1f8 = piVar7;" (assignment_expression "piStack_1f8 = piVar7" (identifier "piStack_1f8") (= "=") (identifier "piVar7")) (; ";")) (expression_statement "pcStack_1f4 = pcVar20;" (assignment_expression "pcStack_1f4 = pcVar20" (identifier "pcStack_1f4") (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "puStack_1f0 = puVar18;" (assignment_expression "puStack_1f0 = puVar18" (identifier "puStack_1f0") (= "=") (identifier "puVar18")) (; ";")) (expression_statement "puStack_1ec = puVar19;" (assignment_expression "puStack_1ec = puVar19" (identifier "puStack_1ec") (= "=") (identifier "puVar19")) (; ";")) (expression_statement "pcStack_1e8 = pcVar23;" (assignment_expression "pcStack_1e8 = pcVar23" (identifier "pcStack_1e8") (= "=") (identifier "pcVar23")) (; ";")) (expression_statement "pcStack_1e4 = pcVar25;" (assignment_expression "pcStack_1e4 = pcVar25" (identifier "pcStack_1e4") (= "=") (identifier "pcVar25")) (; ";")) (if_statement "if (iStack_1cc == 9) {\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }\n              else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }" (if "if") (parenthesized_expression "(iStack_1cc == 9)" (( "(") (binary_expression "iStack_1cc == 9" (identifier "iStack_1cc") (== "==") (number_literal "9")) () ")")) (compound_statement "{\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }\n              }" ({ "{") (expression_statement "pcStack_218 = *(code **)(pcVar14 + 0x3d7018);" (assignment_expression "pcStack_218 = *(code **)(pcVar14 + 0x3d7018)" (identifier "pcStack_218") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x3d7018)" (* "*") (cast_expression "(code **)(pcVar14 + 0x3d7018)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x3d7018)" (( "(") (binary_expression "pcVar14 + 0x3d7018" (identifier "pcVar14") (+ "+") (number_literal "0x3d7018")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcStack_218;" (assignment_expression "pcVar4 = pcStack_218" (identifier "pcVar4") (= "=") (identifier "pcStack_218")) (; ";")) (if_statement "if (pcStack_1c4 != (code *)0x0) {\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }" (if "if") (parenthesized_expression "(pcStack_1c4 != (code *)0x0)" (( "(") (binary_expression "pcStack_1c4 != (code *)0x0" (identifier "pcStack_1c4") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar24 = (code *)0x0;\n                  puVar18 = &uStack_220;\n                  pcVar23 = (code *)&DAT_aaaaaaab;\n                  do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);\n                }" ({ "{") (expression_statement "pcVar20 = *(code **)(pcVar14 + 0x3d7050);" (assignment_expression "pcVar20 = *(code **)(pcVar14 + 0x3d7050)" (identifier "pcVar20") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x3d7050)" (* "*") (cast_expression "(code **)(pcVar14 + 0x3d7050)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x3d7050)" (( "(") (binary_expression "pcVar14 + 0x3d7050" (identifier "pcVar14") (+ "+") (number_literal "0x3d7050")) () ")"))))) (; ";")) (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" (identifier "pcVar24") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "puVar18 = &uStack_220;" (assignment_expression "puVar18 = &uStack_220" (identifier "puVar18") (= "=") (pointer_expression "&uStack_220" (& "&") (identifier "uStack_220"))) (; ";")) (expression_statement "pcVar23 = (code *)&DAT_aaaaaaab;" (assignment_expression "pcVar23 = (code *)&DAT_aaaaaaab" (identifier "pcVar23") (= "=") (cast_expression "(code *)&DAT_aaaaaaab" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_aaaaaaab" (& "&") (identifier "DAT_aaaaaaab")))) (; ";")) (do_statement "do {\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  } while (pcStack_1c4 != pcVar24);" (do "do") (compound_statement "{\n                    if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }\n                    pcVar24 = pcVar24 + 1;\n                    pcVar15 = pcVar15 + 0x10;\n                    pcVar4 = pcStack_1c4;\n                  }" ({ "{") (if_statement "if (uVar17 == 0) {\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }\n                    else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }" (if "if") (parenthesized_expression "(uVar17 == 0)" (( "(") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);\n                      if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }\n                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                    }" ({ "{") (labeled_statement "LAB_000eae6c:\n                      pcVar21 = *(code **)(pcVar15 + 8);" (statement_identifier "LAB_000eae6c") (: ":") (expression_statement "pcVar21 = *(code **)(pcVar15 + 8);" (assignment_expression "pcVar21 = *(code **)(pcVar15 + 8)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar15 + 8)" (* "*") (cast_expression "(code **)(pcVar15 + 8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 8)" (( "(") (binary_expression "pcVar15 + 8" (identifier "pcVar15") (+ "+") (number_literal "8")) () ")"))))) (; ";"))) (if_statement "if (pcVar21 < pcStack_1b8) {\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }\n                      else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }" (if "if") (parenthesized_expression "(pcVar21 < pcStack_1b8)" (( "(") (binary_expression "pcVar21 < pcStack_1b8" (identifier "pcVar21") (< "<") (identifier "pcStack_1b8")) () ")")) (compound_statement "{\n                        pcVar4 = pcStack_228;\n                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;\n                        iVar2 = (int)pcVar21 * 0x18;\n                        pcVar14 = pcVar3 + iVar2;\n                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);\n                        if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }\n                        pcVar4 = pcStack_228;\n                        if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                      }" ({ "{") (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" (identifier "pcVar4") (= "=") (identifier "pcStack_228")) (; ";")) (if_statement "if (pcVar3 == (code *)0x0) goto LAB_000eb138;" (if "if") (parenthesized_expression "(pcVar3 == (code *)0x0)" (( "(") (binary_expression "pcVar3 == (code *)0x0" (identifier "pcVar3") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000eb138;" (goto "goto") (statement_identifier "LAB_000eb138") (; ";"))) (expression_statement "iVar2 = (int)pcVar21 * 0x18;" (assignment_expression "iVar2 = (int)pcVar21 * 0x18" (identifier "iVar2") (= "=") (binary_expression "(int)pcVar21 * 0x18" (cast_expression "(int)pcVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar21")) (* "*") (number_literal "0x18"))) (; ";")) (expression_statement "pcVar14 = pcVar3 + iVar2;" (assignment_expression "pcVar14 = pcVar3 + iVar2" (identifier "pcVar14") (= "=") (binary_expression "pcVar3 + iVar2" (identifier "pcVar3") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar14 + 6);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar14 + 6)" (identifier "uVar6") (= "=") (binary_expression "(uint)*(ushort *)(pcVar14 + 6)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(ushort *)(pcVar14 + 6)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 6)" (( "(") (binary_expression "pcVar14 + 6" (identifier "pcVar14") (+ "+") (number_literal "6")) () ")"))))) (; ";")) (if_statement "if (uVar6 < 0xff00) {\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }\n                        else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }" (if "if") (parenthesized_expression "(uVar6 < 0xff00)" (( "(") (binary_expression "uVar6 < 0xff00" (identifier "uVar6") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;\n                          iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                          pcVar4 = pcStack_228;\n                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;\n                          cVar1 = pcVar14[4];\n                        }" ({ "{") (labeled_statement "LAB_000eafac:\n                          if (uVar6 == 0) goto LAB_000eaeb0;" (statement_identifier "LAB_000eafac") (: ":") (if_statement "if (uVar6 == 0) goto LAB_000eaeb0;" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000eaeb0;" (goto "goto") (statement_identifier "LAB_000eaeb0") (; ";")))) (expression_statement "iVar11 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_228 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_228 + -0x77f0)" (( "(") (binary_expression "pcStack_228 + -0x77f0" (identifier "pcStack_228") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" (identifier "pcVar4") (= "=") (identifier "pcStack_228")) (; ";")) (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;" (if "if") (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" (identifier "piVar13") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000eb154;" (goto "goto") (statement_identifier "LAB_000eb154") (; ";"))) (if_statement "if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;" (if "if") (parenthesized_expression "(*(int *)(piVar13[0xe] + uVar6 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar13[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000eaf54;" (goto "goto") (statement_identifier "LAB_000eaf54") (; ";"))) (expression_statement "cVar1 = pcVar14[4];" (assignment_expression "cVar1 = pcVar14[4]" (identifier "cVar1") (= "=") (subscript_expression "pcVar14[4]" (identifier "pcVar14") ([ "[") (number_literal "4") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }" (else "else") (compound_statement "{\n                          if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }\nLAB_000eaeb0:\n                          cVar1 = pcVar14[4];\n                        }" ({ "{") (if_statement "if (uVar6 == 0xffff) {\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }" (if "if") (parenthesized_expression "(uVar6 == 0xffff)" (( "(") (binary_expression "uVar6 == 0xffff" (identifier "uVar6") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                            iVar11 = piVar13[0xc];\n                            iStack_20c = iVar2;\n                            pcStack_214 = pcVar21;\n                            pcStack_210 = pcVar14;\n                            if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }\n                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;\n                            iVar2 = iStack_20c;\n                            pcVar21 = pcStack_214;\n                            pcVar14 = pcStack_210;\n                            goto LAB_000eafac;\n                          }" ({ "{") (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" (identifier "iVar11") (= "=") (subscript_expression "piVar13[0xc]" (identifier "piVar13") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "iStack_20c = iVar2;" (assignment_expression "iStack_20c = iVar2" (identifier "iStack_20c") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "pcStack_214 = pcVar21;" (assignment_expression "pcStack_214 = pcVar21" (identifier "pcStack_214") (= "=") (identifier "pcVar21")) (; ";")) (expression_statement "pcStack_210 = pcVar14;" (assignment_expression "pcStack_210 = pcVar14" (identifier "pcStack_210") (= "=") (identifier "pcVar14")) (; ";")) (if_statement "if (iVar11 == 0) {\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                              piVar13[0xc] = iVar11;\n                            }" ({ "{") (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar13 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar13 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar13 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x6c)" (( "(") (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar13)" (( "(") (identifier "piVar13") () ")")))) (; ";")) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" (identifier "piVar13") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar11")) (; ";")) (} "}"))) (expression_statement "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)\n                            ;" (assignment_expression "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" (identifier "uVar6") (= "=") (call_expression "(**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_228 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_228 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_228 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_228 + -0x7790)" (( "(") (binary_expression "pcStack_228 + -0x7790" (identifier "pcStack_228") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar11,piVar13,pcStack_214)" (( "(") (identifier "iVar11") (, ",") (identifier "piVar13") (, ",") (identifier "pcStack_214") () ")")))) (; ";")) (expression_statement "iVar2 = iStack_20c;" (assignment_expression "iVar2 = iStack_20c" (identifier "iVar2") (= "=") (identifier "iStack_20c")) (; ";")) (expression_statement "pcVar21 = pcStack_214;" (assignment_expression "pcVar21 = pcStack_214" (identifier "pcVar21") (= "=") (identifier "pcStack_214")) (; ";")) (expression_statement "pcVar14 = pcStack_210;" (assignment_expression "pcVar14 = pcStack_210" (identifier "pcVar14") (= "=") (identifier "pcStack_210")) (; ";")) (goto_statement "goto LAB_000eafac;" (goto "goto") (statement_identifier "LAB_000eafac") (; ";")) (} "}"))) (labeled_statement "LAB_000eaeb0:\n                          cVar1 = pcVar14[4];" (statement_identifier "LAB_000eaeb0") (: ":") (expression_statement "cVar1 = pcVar14[4];" (assignment_expression "cVar1 = pcVar14[4]" (identifier "cVar1") (= "=") (subscript_expression "pcVar14[4]" (identifier "pcVar14") ([ "[") (number_literal "4") (] "]"))) (; ";"))) (} "}")))) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" (identifier "pcVar4") (= "=") (identifier "pcStack_228")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }\n                        else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                          uStack_220 = CONCAT13(2,uStack_220._1_3_);\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" ({ "{") (if_statement "if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }\n                          else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" (if "if") (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcStack_218)" (( "(") (binary_expression "*(code **)(*piVar13 + 0x60) == pcStack_218" (pointer_expression "*(code **)(*piVar13 + 0x60)" (* "*") (cast_expression "(code **)(*piVar13 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x60)" (( "(") (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcStack_218")) () ")")) (compound_statement "{\n                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;\n                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" ({ "{") (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)\n                            goto LAB_000eb100;" (if "if") (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" (identifier "piVar13") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000eb100;" (goto "goto") (statement_identifier "LAB_000eb100") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" (else "else") (compound_statement "{\n                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                            uVar6 = *(uint *)(iVar2 + 0x98);\n                          }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar13 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar13 + 0x60)" (* "*") (cast_expression "(code **)(*piVar13 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x60)" (( "(") (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar13,uVar6)" (( "(") (identifier "piVar13") (, ",") (identifier "uVar6") () ")")))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" (identifier "uVar6") (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_220 = CONCAT13(2,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(2,uStack_220._1_3_)" (identifier "uStack_220") (= "=") (call_expression "CONCAT13(2,uStack_220._1_3_)" (identifier "CONCAT13") (argument_list "(2,uStack_220._1_3_)" (( "(") (number_literal "2") (, ",") (field_expression "uStack_220._1_3_" (identifier "uStack_220") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "(pcVar22,puVar18)" (( "(") (identifier "pcVar22") (, ",") (identifier "puVar18") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" (else "else") (compound_statement "{\n                          piVar7 = (int *)(piVar13[0x3a] + iVar2);\n                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;\n                          iVar2 = *piVar7;\n                          if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;\n                          *piVar7 = -2;\n                          uStack_220 = uStack_220 & 0xffffff;\n                          (*pcVar20)(pcVar22,puVar18);\n                        }" ({ "{") (expression_statement "piVar7 = (int *)(piVar13[0x3a] + iVar2);" (assignment_expression "piVar7 = (int *)(piVar13[0x3a] + iVar2)" (identifier "piVar7") (= "=") (cast_expression "(int *)(piVar13[0x3a] + iVar2)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0x3a] + iVar2)" (( "(") (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" (identifier "piVar13") ([ "[") (number_literal "0x3a") (] "]")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (if_statement "if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21) goto LAB_000eb0e4;" (if "if") (parenthesized_expression "((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21)" (( "(") (binary_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=\n                              pcVar21" (cast_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555)" (( "(") (binary_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555" (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3)" (( "(") (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 3" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" (identifier "piVar13") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar13[0x3a]" (identifier "piVar13") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "3")) () ")")) (* "*") (number_literal "-0x55555555")) () ")"))) (<= "<=") (identifier "pcVar21")) () ")")) (goto_statement "goto LAB_000eb0e4;" (goto "goto") (statement_identifier "LAB_000eb0e4") (; ";"))) (expression_statement "iVar2 = *piVar7;" (assignment_expression "iVar2 = *piVar7" (identifier "iVar2") (= "=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) (; ";")) (if_statement "if ((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))\n                          goto LAB_000ead48;" (if "if") (parenthesized_expression "((iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))" (( "(") (binary_expression "(iVar2 != 0) &&\n                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2)" (( "(") (comma_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_228 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_228 + -0x77f0)" (( "(") (binary_expression "pcStack_228 + -0x77f0" (identifier "pcStack_228") (+ "+") (number_literal "-0x77f0")) () ")"))))) (, ",") (binary_expression "iVar2 != -2" (identifier "iVar2") (!= "!=") (number_literal "-2"))) () ")"))) () ")")) (goto_statement "goto LAB_000ead48;" (goto "goto") (statement_identifier "LAB_000ead48") (; ";"))) (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (= "=") (number_literal "-2")) (; ";")) (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" (identifier "uStack_220") (= "=") (binary_expression "uStack_220 & 0xffffff" (identifier "uStack_220") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "(pcVar22,puVar18)" (( "(") (identifier "pcVar22") (, ",") (identifier "puVar18") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }" (else "else") (compound_statement "{\n                        uStack_220 = uStack_220 & 0xffffff;\n                        (*pcVar20)(pcVar22,puVar18);\n                      }" ({ "{") (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" (identifier "uStack_220") (= "=") (binary_expression "uStack_220 & 0xffffff" (identifier "uStack_220") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "(pcVar22,puVar18)" (( "(") (identifier "pcVar22") (, ",") (identifier "puVar18") () ")"))) (; ";")) (} "}")))) (expression_statement "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" (* "*") (cast_expression "(int *)((int)pcVar22 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar22 + 0xc)" (( "(") (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar22")) (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "*(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" (* "*") (cast_expression "(int *)((int)pcVar22 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar22 + 0xc)" (( "(") (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar22")) (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }" (else "else") (compound_statement "{\n                      pcStack_22c = *(code **)(pcVar15 + 4);\n                      uStack_230 = *(undefined4 *)pcVar15;\n                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                      if (iVar2 != 0) goto LAB_000eae6c;\nLAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                      (*pcVar20)(pcVar22,puVar18);\n                    }" ({ "{") (expression_statement "pcStack_22c = *(code **)(pcVar15 + 4);" (assignment_expression "pcStack_22c = *(code **)(pcVar15 + 4)" (identifier "pcStack_22c") (= "=") (pointer_expression "*(code **)(pcVar15 + 4)" (* "*") (cast_expression "(code **)(pcVar15 + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 4)" (( "(") (binary_expression "pcVar15 + 4" (identifier "pcVar15") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "uStack_230 = *(undefined4 *)pcVar15;" (assignment_expression "uStack_230 = *(undefined4 *)pcVar15" (identifier "uStack_230") (= "=") (pointer_expression "*(undefined4 *)pcVar15" (* "*") (cast_expression "(undefined4 *)pcVar15" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15")))) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);" (assignment_expression "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_228 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_228 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_228 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_228 + -0x76e0)" (( "(") (binary_expression "pcStack_228 + -0x76e0" (identifier "pcStack_228") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(uStack_1c0,piVar13,uStack_1d0)" (( "(") (identifier "uStack_1c0") (, ",") (identifier "piVar13") (, ",") (identifier "uStack_1d0") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) goto LAB_000eae6c;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000eae6c;" (goto "goto") (statement_identifier "LAB_000eae6c") (; ";"))) (labeled_statement "LAB_000eaf54:\n                      uStack_220 = CONCAT13(8,uStack_220._1_3_);" (statement_identifier "LAB_000eaf54") (: ":") (expression_statement "uStack_220 = CONCAT13(8,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(8,uStack_220._1_3_)" (identifier "uStack_220") (= "=") (call_expression "CONCAT13(8,uStack_220._1_3_)" (identifier "CONCAT13") (argument_list "(8,uStack_220._1_3_)" (( "(") (number_literal "8") (, ",") (field_expression "uStack_220._1_3_" (identifier "uStack_220") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(*pcVar20)(pcVar22,puVar18);" (call_expression "(*pcVar20)(pcVar22,puVar18)" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "(pcVar22,puVar18)" (( "(") (identifier "pcVar22") (, ",") (identifier "puVar18") () ")"))) (; ";")) (} "}")))) (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" (identifier "pcVar24") (= "=") (binary_expression "pcVar24 + 1" (identifier "pcVar24") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar15 = pcVar15 + 0x10;" (assignment_expression "pcVar15 = pcVar15 + 0x10" (identifier "pcVar15") (= "=") (binary_expression "pcVar15 + 0x10" (identifier "pcVar15") (+ "+") (number_literal "0x10"))) (; ";")) (expression_statement "pcVar4 = pcStack_1c4;" (assignment_expression "pcVar4 = pcStack_1c4" (identifier "pcVar4") (= "=") (identifier "pcStack_1c4")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcStack_1c4 != pcVar24)" (( "(") (binary_expression "pcStack_1c4 != pcVar24" (identifier "pcStack_1c4") (!= "!=") (identifier "pcVar24")) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }" (else "else") (compound_statement "{\n                if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }\n                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);\n                pcVar4 = pcStack_218;\n                if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }\n              }" ({ "{") (if_statement "if (iStack_1cc != 4) {\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }" (if "if") (parenthesized_expression "(iStack_1cc != 4)" (( "(") (binary_expression "iStack_1cc != 4" (identifier "iStack_1cc") (!= "!=") (number_literal "4")) () ")")) (compound_statement "{\nLAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);\nLAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;\n                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);\nLAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);\n                  pcVar25 = FUN_000eb16c;\n                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);\n                  pcVar14 = pcStack_210;\n                  pcVar21 = pcStack_214;\n                  pcVar4 = pcStack_22c;\n                  pcStack_25c = pcVar3;\n                  uStack_268 = (uint)pcVar22;\n                  pcStack_264 = pcVar15;\n                  pcStack_260 = pcVar24;\n                  piStack_258 = piVar13;\n                  pcStack_254 = pcVar20;\n                  puStack_250 = puVar18;\n                  uStack_24c = uVar17;\n                  pcStack_248 = pcVar23;\n                  pcStack_244 = pcVar25;\n                  if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  return pcVar3;\n                }" ({ "{") (labeled_statement "LAB_000eb11c:\n                  (**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);" (statement_identifier "LAB_000eb11c") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,\n                             *(int *)(pcVar4 + -0x77f0) + -0x40ec)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x3588" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x3588")) (, ",") (number_literal "0x27da") (, ",") (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x40ec" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x40ec")) () ")"))) (; ";"))) (labeled_statement "LAB_000eb138:\n                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;" (statement_identifier "LAB_000eb138") (: ":") (expression_statement "iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;" (assignment_expression "iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104" (identifier "iVar11") (= "=") (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4104" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x4104"))) (; ";"))) (expression_statement "(**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);" (call_expression "(**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (identifier "iVar11") () ")"))) (; ";")) (labeled_statement "LAB_000eb154:\n                  pcVar16 = *(code **)(pcVar4 + -0x7810);" (statement_identifier "LAB_000eb154") (: ":") (expression_statement "pcVar16 = *(code **)(pcVar4 + -0x7810);" (assignment_expression "pcVar16 = *(code **)(pcVar4 + -0x7810)" (identifier "pcVar16") (= "=") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) (; ";"))) (expression_statement "pcVar25 = FUN_000eb16c;" (assignment_expression "pcVar25 = FUN_000eb16c" (identifier "pcVar25") (= "=") (identifier "FUN_000eb16c")) (; ";")) (expression_statement "(*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);" (call_expression "(*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" (parenthesized_expression "(*pcVar16)" (( "(") (pointer_expression "*pcVar16" (* "*") (identifier "pcVar16")) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x50b") (, ",") (binary_expression "iVar11 + -0x34dc" (identifier "iVar11") (+ "+") (number_literal "-0x34dc")) () ")"))) (; ";")) (expression_statement "pcVar14 = pcStack_210;" (assignment_expression "pcVar14 = pcStack_210" (identifier "pcVar14") (= "=") (identifier "pcStack_210")) (; ";")) (expression_statement "pcVar21 = pcStack_214;" (assignment_expression "pcVar21 = pcStack_214" (identifier "pcVar21") (= "=") (identifier "pcStack_214")) (; ";")) (expression_statement "pcVar4 = pcStack_22c;" (assignment_expression "pcVar4 = pcStack_22c" (identifier "pcVar4") (= "=") (identifier "pcStack_22c")) (; ";")) (expression_statement "pcStack_25c = pcVar3;" (assignment_expression "pcStack_25c = pcVar3" (identifier "pcStack_25c") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "uStack_268 = (uint)pcVar22;" (assignment_expression "uStack_268 = (uint)pcVar22" (identifier "uStack_268") (= "=") (cast_expression "(uint)pcVar22" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar22"))) (; ";")) (expression_statement "pcStack_264 = pcVar15;" (assignment_expression "pcStack_264 = pcVar15" (identifier "pcStack_264") (= "=") (identifier "pcVar15")) (; ";")) (expression_statement "pcStack_260 = pcVar24;" (assignment_expression "pcStack_260 = pcVar24" (identifier "pcStack_260") (= "=") (identifier "pcVar24")) (; ";")) (expression_statement "piStack_258 = piVar13;" (assignment_expression "piStack_258 = piVar13" (identifier "piStack_258") (= "=") (identifier "piVar13")) (; ";")) (expression_statement "pcStack_254 = pcVar20;" (assignment_expression "pcStack_254 = pcVar20" (identifier "pcStack_254") (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "puStack_250 = puVar18;" (assignment_expression "puStack_250 = puVar18" (identifier "puStack_250") (= "=") (identifier "puVar18")) (; ";")) (expression_statement "uStack_24c = uVar17;" (assignment_expression "uStack_24c = uVar17" (identifier "uStack_24c") (= "=") (identifier "uVar17")) (; ";")) (expression_statement "pcStack_248 = pcVar23;" (assignment_expression "pcStack_248 = pcVar23" (identifier "pcStack_248") (= "=") (identifier "pcVar23")) (; ";")) (expression_statement "pcStack_244 = pcVar25;" (assignment_expression "pcStack_244 = pcVar25" (identifier "pcStack_244") (= "=") (identifier "pcVar25")) (; ";")) (if_statement "if (pcStack_22c == (code *)0x9) {\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }\n                  else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" (if "if") (parenthesized_expression "(pcStack_22c == (code *)0x9)" (( "(") (binary_expression "pcStack_22c == (code *)0x9" (identifier "pcStack_22c") (== "==") (cast_expression "(code *)0x9" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9"))) () ")")) (compound_statement "{\n                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" ({ "{") (expression_statement "pcVar3 = *(code **)(pcVar16 + 0x3d68e0);" (assignment_expression "pcVar3 = *(code **)(pcVar16 + 0x3d68e0)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(pcVar16 + 0x3d68e0)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e0)" (( "(") (binary_expression "pcVar16 + 0x3d68e0" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e0")) () ")"))))) (; ";")) (if_statement "if (pcStack_224 != (code *)0x0) {\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" (if "if") (parenthesized_expression "(pcStack_224 != (code *)0x0)" (( "(") (binary_expression "pcStack_224 != (code *)0x0" (identifier "pcStack_224") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      pcVar20 = (code *)0x0;\n                      iVar2 = *(int *)(pcVar16 + 0x3d6110);\n                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);\n                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;\n                      pcVar22 = pcStack_228;\n                      do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" ({ "{") (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" (identifier "pcVar20") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar16 + 0x3d6110);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0x3d6110)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d6110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6110)" (( "(") (binary_expression "pcVar16 + 0x3d6110" (identifier "pcVar16") (+ "+") (number_literal "0x3d6110")) () ")"))))) (; ";")) (expression_statement "pcVar15 = *(code **)(pcVar16 + 0x3d69b8);" (assignment_expression "pcVar15 = *(code **)(pcVar16 + 0x3d69b8)" (identifier "pcVar15") (= "=") (pointer_expression "*(code **)(pcVar16 + 0x3d69b8)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d69b8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d69b8)" (( "(") (binary_expression "pcVar16 + 0x3d69b8" (identifier "pcVar16") (+ "+") (number_literal "0x3d69b8")) () ")"))))) (; ";")) (expression_statement "pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;" (assignment_expression "pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864" (identifier "pcStack_280") (= "=") (binary_expression "*(code **)(pcVar16 + 0x3d68e0) + 0x1864" (pointer_expression "*(code **)(pcVar16 + 0x3d68e0)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e0)" (( "(") (binary_expression "pcVar16 + 0x3d68e0" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e0")) () ")")))) (+ "+") (number_literal "0x1864"))) (; ";")) (expression_statement "pcVar22 = pcStack_228;" (assignment_expression "pcVar22 = pcStack_228" (identifier "pcVar22") (= "=") (identifier "pcStack_228")) (; ";")) (do_statement "do {\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);" (do "do") (compound_statement "{\n                        if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }\nLAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;\n                        pcVar22 = pcVar22 + 0x10;\n                        pcVar3 = pcStack_224;\n                      }" ({ "{") (if_statement "if ((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)) {\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }\n                        else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }" (if "if") (parenthesized_expression "((cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0))" (( "(") (binary_expression "(cStack_219 == '\0') ||\n                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)" (parenthesized_expression "(cStack_219 == '\0')" (( "(") (binary_expression "cStack_219 == '\0'" (identifier "cStack_219") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0)" (( "(") (comma_expression "iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)\n                           , iVar11 != 0" (assignment_expression "iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d69f4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d69f4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d69f4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d69f4)" (( "(") (binary_expression "pcVar16 + 0x3d69f4" (identifier "pcVar16") (+ "+") (number_literal "0x3d69f4")) () ")"))))) () ")")) (argument_list "(uStack_220,piVar5,uStack_230)" (( "(") (identifier "uStack_220") (, ",") (identifier "piVar5") (, ",") (identifier "uStack_230") () ")")))) (, ",") (binary_expression "iVar11 != 0" (identifier "iVar11") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n                          pcVar3 = *(code **)(pcVar22 + 8);\n                          if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;\n                        }" ({ "{") (expression_statement "pcVar3 = *(code **)(pcVar22 + 8);" (assignment_expression "pcVar3 = *(code **)(pcVar22 + 8)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(pcVar22 + 8)" (* "*") (cast_expression "(code **)(pcVar22 + 8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 8)" (( "(") (binary_expression "pcVar22 + 8" (identifier "pcVar22") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (pcVar3 < pcStack_218) {\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }\n                          else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" (if "if") (parenthesized_expression "(pcVar3 < pcStack_218)" (( "(") (binary_expression "pcVar3 < pcStack_218" (identifier "pcVar3") (< "<") (identifier "pcStack_218")) () ")")) (compound_statement "{\n                            if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }\n                            iVar11 = (int)pcVar3 * 0x18;\n                            pcVar24 = pcVar21 + iVar11;\n                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);\n                            uVar17 = (uint)(byte)pcVar22[0xf];\n                            if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }\n                            if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }\n                            if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }\n                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }\n                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);\n                            *(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = SUB41(pcStack_27c,0);\n                            (*pcVar3)(pcVar14,auStack_288);\n                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" ({ "{") (if_statement "if (pcVar21 == (code *)0x0) {\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }" (if "if") (parenthesized_expression "(pcVar21 == (code *)0x0)" (( "(") (binary_expression "pcVar21 == (code *)0x0" (identifier "pcVar21") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);\n                              return pcVar4;\n                            }" ({ "{") (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68c4)" (( "(") (binary_expression "pcVar16 + 0x3d68c4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68c4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170)" (( "(") (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x39d4" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d6110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6110)" (( "(") (binary_expression "pcVar16 + 0x3d6110" (identifier "pcVar16") (+ "+") (number_literal "0x3d6110")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4170" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")")))) (+ "+") (number_literal "-0x4170")) () ")"))))) (; ";")) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (expression_statement "iVar11 = (int)pcVar3 * 0x18;" (assignment_expression "iVar11 = (int)pcVar3 * 0x18" (identifier "iVar11") (= "=") (binary_expression "(int)pcVar3 * 0x18" (cast_expression "(int)pcVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar3")) (* "*") (number_literal "0x18"))) (; ";")) (expression_statement "pcVar24 = pcVar21 + iVar11;" (assignment_expression "pcVar24 = pcVar21 + iVar11" (identifier "pcVar24") (= "=") (binary_expression "pcVar21 + iVar11" (identifier "pcVar21") (+ "+") (identifier "iVar11"))) (; ";")) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar24 + 6);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar24 + 6)" (identifier "uVar6") (= "=") (binary_expression "(uint)*(ushort *)(pcVar24 + 6)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(ushort *)(pcVar24 + 6)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar24 + 6)" (( "(") (binary_expression "pcVar24 + 6" (identifier "pcVar24") (+ "+") (number_literal "6")) () ")"))))) (; ";")) (expression_statement "uVar17 = (uint)(byte)pcVar22[0xf];" (assignment_expression "uVar17 = (uint)(byte)pcVar22[0xf]" (identifier "uVar17") (= "=") (cast_expression "(uint)(byte)pcVar22[0xf]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)pcVar22[0xf]" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (subscript_expression "pcVar22[0xf]" (identifier "pcVar22") ([ "[") (number_literal "0xf") (] "]"))))) (; ";")) (if_statement "if (uVar6 < 0xff00) {\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }\n                            else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }" (if "if") (parenthesized_expression "(uVar6 < 0xff00)" (( "(") (binary_expression "uVar6 < 0xff00" (identifier "uVar6") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }\n                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;\n                              cVar1 = pcVar24[4];\n                            }" ({ "{") (labeled_statement "LAB_000eb628:\n                              if (uVar6 == 0) goto LAB_000eb52c;" (statement_identifier "LAB_000eb628") (: ":") (if_statement "if (uVar6 == 0) goto LAB_000eb52c;" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000eb52c;" (goto "goto") (statement_identifier "LAB_000eb52c") (; ";")))) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }" (if "if") (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" (( "(") (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" (identifier "piVar5") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (compound_statement "{\n                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                                goto LAB_000eb860;\n                              }" ({ "{") (expression_statement "iVar2 = *(int *)(pcVar16 + 0x3d68e4);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0x3d68e4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")"))))) (; ";")) (goto_statement "goto LAB_000eb860;" (goto "goto") (statement_identifier "LAB_000eb860") (; ";")) (} "}"))) (if_statement "if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;" (if "if") (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar6 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar5[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000eb5c8;" (goto "goto") (statement_identifier "LAB_000eb5c8") (; ";"))) (expression_statement "cVar1 = pcVar24[4];" (assignment_expression "cVar1 = pcVar24[4]" (identifier "cVar1") (= "=") (subscript_expression "pcVar24[4]" (identifier "pcVar24") ([ "[") (number_literal "4") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }" (else "else") (compound_statement "{\n                              if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }\nLAB_000eb52c:\n                              cVar1 = pcVar24[4];\n                            }" ({ "{") (if_statement "if (uVar6 == 0xffff) {\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }" (if "if") (parenthesized_expression "(uVar6 == 0xffff)" (( "(") (binary_expression "uVar6 == 0xffff" (identifier "uVar6") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                                iVar12 = piVar5[0xc];\n                                iStack_270 = iVar11;\n                                pcStack_27c = pcVar3;\n                                uStack_278 = uVar17;\n                                pcStack_274 = pcVar24;\n                                if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }\n                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;\n                                iVar11 = iStack_270;\n                                pcVar3 = pcStack_27c;\n                                uVar17 = uStack_278;\n                                pcVar24 = pcStack_274;\n                                goto LAB_000eb628;\n                              }" ({ "{") (expression_statement "iVar12 = piVar5[0xc];" (assignment_expression "iVar12 = piVar5[0xc]" (identifier "iVar12") (= "=") (subscript_expression "piVar5[0xc]" (identifier "piVar5") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "iStack_270 = iVar11;" (assignment_expression "iStack_270 = iVar11" (identifier "iStack_270") (= "=") (identifier "iVar11")) (; ";")) (expression_statement "pcStack_27c = pcVar3;" (assignment_expression "pcStack_27c = pcVar3" (identifier "pcStack_27c") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "uStack_278 = uVar17;" (assignment_expression "uStack_278 = uVar17" (identifier "uStack_278") (= "=") (identifier "uVar17")) (; ";")) (expression_statement "pcStack_274 = pcVar24;" (assignment_expression "pcStack_274 = pcVar24" (identifier "pcStack_274") (= "=") (identifier "pcVar24")) (; ";")) (if_statement "if (iVar12 == 0) {\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }" (if "if") (parenthesized_expression "(iVar12 == 0)" (( "(") (binary_expression "iVar12 == 0" (identifier "iVar12") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);\n                                  piVar5[0xc] = iVar12;\n                                }" ({ "{") (expression_statement "iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);" (assignment_expression "iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288)" (identifier "iVar12") (= "=") (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar5 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar5 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar5 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x6c)" (( "(") (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar5,auStack_288)" (( "(") (identifier "piVar5") (, ",") (identifier "auStack_288") () ")")))) (; ";")) (expression_statement "piVar5[0xc] = iVar12;" (assignment_expression "piVar5[0xc] = iVar12" (subscript_expression "piVar5[0xc]" (identifier "piVar5") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar12")) (; ";")) (} "}"))) (expression_statement "uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)\n                                ;" (assignment_expression "uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)" (identifier "uVar6") (= "=") (call_expression "(**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d6944))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d6944)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d6944)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d6944)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6944)" (( "(") (binary_expression "pcVar16 + 0x3d6944" (identifier "pcVar16") (+ "+") (number_literal "0x3d6944")) () ")"))))) () ")")) (argument_list "(iVar12,piVar5,pcStack_27c)" (( "(") (identifier "iVar12") (, ",") (identifier "piVar5") (, ",") (identifier "pcStack_27c") () ")")))) (; ";")) (expression_statement "iVar11 = iStack_270;" (assignment_expression "iVar11 = iStack_270" (identifier "iVar11") (= "=") (identifier "iStack_270")) (; ";")) (expression_statement "pcVar3 = pcStack_27c;" (assignment_expression "pcVar3 = pcStack_27c" (identifier "pcVar3") (= "=") (identifier "pcStack_27c")) (; ";")) (expression_statement "uVar17 = uStack_278;" (assignment_expression "uVar17 = uStack_278" (identifier "uVar17") (= "=") (identifier "uStack_278")) (; ";")) (expression_statement "pcVar24 = pcStack_274;" (assignment_expression "pcVar24 = pcStack_274" (identifier "pcVar24") (= "=") (identifier "pcStack_274")) (; ";")) (goto_statement "goto LAB_000eb628;" (goto "goto") (statement_identifier "LAB_000eb628") (; ";")) (} "}"))) (labeled_statement "LAB_000eb52c:\n                              cVar1 = pcVar24[4];" (statement_identifier "LAB_000eb52c") (: ":") (expression_statement "cVar1 = pcVar24[4];" (assignment_expression "cVar1 = pcVar24[4]" (identifier "cVar1") (= "=") (subscript_expression "pcVar24[4]" (identifier "pcVar24") ([ "[") (number_literal "4") (] "]"))) (; ";"))) (} "}")))) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;\n                              piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }\n                              goto LAB_000eb808;\n                            }" ({ "{") (if_statement "if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;" (if "if") (parenthesized_expression "((uVar17 == 0) && (pcVar3 == (code *)0x0))" (( "(") (binary_expression "(uVar17 == 0) && (pcVar3 == (code *)0x0)" (parenthesized_expression "(uVar17 == 0)" (( "(") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(pcVar3 == (code *)0x0)" (( "(") (binary_expression "pcVar3 == (code *)0x0" (identifier "pcVar3") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (goto_statement "goto LAB_000eb5c8;" (goto "goto") (statement_identifier "LAB_000eb5c8") (; ";"))) (expression_statement "piVar7 = (int *)(piVar5[0x3a] + iVar11);" (assignment_expression "piVar7 = (int *)(piVar5[0x3a] + iVar11)" (identifier "piVar7") (= "=") (cast_expression "(int *)(piVar5[0x3a] + iVar11)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0x3a] + iVar11)" (( "(") (binary_expression "piVar5[0x3a] + iVar11" (subscript_expression "piVar5[0x3a]" (identifier "piVar5") ([ "[") (number_literal "0x3a") (] "]")) (+ "+") (identifier "iVar11")) () ")")))) (; ";")) (if_statement "if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )) {\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }" (if "if") (parenthesized_expression "(pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   ))" (( "(") (binary_expression "pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )" (identifier "pcVar3") (< "<") (cast_expression "(code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555\n                                                   )" (( "(") (binary_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555" (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3)" (( "(") (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 3" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" (identifier "piVar5") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar5[0x3a]" (identifier "piVar5") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "3")) () ")")) (* "*") (number_literal "-0x55555555")) () ")")))) () ")")) (compound_statement "{\n                                iVar11 = *piVar7;\n                                if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }\n                                goto LAB_000eb2d8;\n                              }" ({ "{") (expression_statement "iVar11 = *piVar7;" (assignment_expression "iVar11 = *piVar7" (identifier "iVar11") (= "=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) (; ";")) (if_statement "if ((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }" (if "if") (parenthesized_expression "((iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2))" (( "(") (binary_expression "(iVar11 == 0) ||\n                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)" (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)" (( "(") (comma_expression "iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2" (assignment_expression "iVar12 = *(int *)(pcVar16 + 0x3d68e4)" (identifier "iVar12") (= "=") (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")"))))) (, ",") (binary_expression "iVar11 == -2" (identifier "iVar11") (== "==") (number_literal "-2"))) () ")"))) () ")")) (compound_statement "{\n                                  *piVar7 = -2;\n                                  goto LAB_000eb4ac;\n                                }" ({ "{") (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (= "=") (number_literal "-2")) (; ";")) (goto_statement "goto LAB_000eb4ac;" (goto "goto") (statement_identifier "LAB_000eb4ac") (; ";")) (} "}"))) (goto_statement "goto LAB_000eb2d8;" (goto "goto") (statement_identifier "LAB_000eb2d8") (; ";")) (} "}"))) (goto_statement "goto LAB_000eb808;" (goto "goto") (statement_identifier "LAB_000eb808") (; ";")) (} "}"))) (if_statement "if (uVar17 != 4) {\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }" (if "if") (parenthesized_expression "(uVar17 != 4)" (( "(") (binary_expression "uVar17 != 4" (identifier "uVar17") (!= "!=") (number_literal "4")) () ")")) (compound_statement "{\n                              pcStack_27c = (code *)uVar6;\n                              uVar17 = (*pcStack_280)(uVar17,piVar5);\n                              if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);\n                              return pcVar4;\n                            }" ({ "{") (expression_statement "pcStack_27c = (code *)uVar6;" (assignment_expression "pcStack_27c = (code *)uVar6" (identifier "pcStack_27c") (= "=") (cast_expression "(code *)uVar6" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar6"))) (; ";")) (expression_statement "uVar17 = (*pcStack_280)(uVar17,piVar5);" (assignment_expression "uVar17 = (*pcStack_280)(uVar17,piVar5)" (identifier "uVar17") (= "=") (call_expression "(*pcStack_280)(uVar17,piVar5)" (parenthesized_expression "(*pcStack_280)" (( "(") (pointer_expression "*pcStack_280" (* "*") (identifier "pcStack_280")) () ")")) (argument_list "(uVar17,piVar5)" (( "(") (identifier "uVar17") (, ",") (identifier "piVar5") () ")")))) (; ";")) (if_statement "if (uVar17 < 9) {\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }" (if "if") (parenthesized_expression "(uVar17 < 9)" (( "(") (binary_expression "uVar17 < 9" (identifier "uVar17") (< "<") (number_literal "9")) () ")")) (compound_statement "{\n                    \n                    \n                                pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();\n                                return pcVar4;\n                              }" ({ "{") (expression_statement "pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )();" (assignment_expression "pcVar4 = (code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )()" (identifier "pcVar4") (= "=") (cast_expression "(code *)(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )()" (parenthesized_expression "(*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)\n                                                 )" (( "(") (pointer_expression "*(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)" (* "*") (parenthesized_expression "(pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)" (( "(") (binary_expression "pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4" (binary_expression "pcVar16 +\n                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4)" (identifier "pcVar16") (+ "+") (pointer_expression "*(int *)(iVar2 + 0x5490 + uVar17 * 4)" (* "*") (cast_expression "(int *)(iVar2 + 0x5490 + uVar17 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x5490 + uVar17 * 4)" (( "(") (binary_expression "iVar2 + 0x5490 + uVar17 * 4" (binary_expression "iVar2 + 0x5490" (identifier "iVar2") (+ "+") (number_literal "0x5490")) (+ "+") (binary_expression "uVar17 * 4" (identifier "uVar17") (* "*") (number_literal "4"))) () ")"))))) (+ "+") (number_literal "0x3de0d4")) () ")"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68c4)" (( "(") (binary_expression "pcVar16 + 0x3d68c4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68c4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x39d4,\n                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188)" (( "(") (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x39d4" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d6110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6110)" (( "(") (binary_expression "pcVar16 + 0x3d6110" (identifier "pcVar16") (+ "+") (number_literal "0x3d6110")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x276") (, ",") (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4188" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")")))) (+ "+") (number_literal "-0x4188")) () ")"))))) (; ";")) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (if_statement "if (*(code **)(*piVar5 + 0x60) == pcVar15) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }\n                            else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }" (if "if") (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcVar15)" (( "(") (binary_expression "*(code **)(*piVar5 + 0x60) == pcVar15" (pointer_expression "*(code **)(*piVar5 + 0x60)" (* "*") (cast_expression "(code **)(*piVar5 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x60)" (( "(") (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcVar15")) () ")")) (compound_statement "{\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;\n                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);\n                              pcStack_27c = pcVar4;\n                            }" ({ "{") (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)\n                              goto LAB_000eb840;" (if "if") (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" (( "(") (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" (identifier "piVar5") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000eb840;" (goto "goto") (statement_identifier "LAB_000eb840") (; ";"))) (expression_statement "iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);" (assignment_expression "iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(piVar5[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar5[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar5[0xe] + uVar6 * 4" (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "pcStack_27c = pcVar4;" (assignment_expression "pcStack_27c = pcVar4" (identifier "pcStack_27c") (= "=") (identifier "pcVar4")) (; ";")) (} "}")) (else_clause "else {\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }" (else "else") (compound_statement "{\n                              pcStack_27c = pcVar4;\n                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);\n                            }" ({ "{") (expression_statement "pcStack_27c = pcVar4;" (assignment_expression "pcStack_27c = pcVar4" (identifier "pcStack_27c") (= "=") (identifier "pcVar4")) (; ";")) (expression_statement "iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);" (assignment_expression "iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar6)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar5 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar5 + 0x60)" (* "*") (cast_expression "(code **)(*piVar5 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x60)" (( "(") (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar5,uVar6)" (( "(") (identifier "piVar5") (, ",") (identifier "uVar6") () ")")))) (; ";")) (} "}")))) (expression_statement "pcVar3 = *(code **)(pcVar16 + 0x3d69f0);" (assignment_expression "pcVar3 = *(code **)(pcVar16 + 0x3d69f0)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d69f0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d69f0)" (( "(") (binary_expression "pcVar16 + 0x3d69f0" (identifier "pcVar16") (+ "+") (number_literal "0x3d69f0")) () ")"))))) (; ";")) (expression_statement "*(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar11 + 0x98) =\n                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar11 + 0x98)" (* "*") (cast_expression "(uint *)(iVar11 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 + 0x98)" (( "(") (binary_expression "iVar11 + 0x98" (identifier "iVar11") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "*(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000" (binary_expression "*(uint *)(iVar11 + 0x98) & 0x7fffffff" (pointer_expression "*(uint *)(iVar11 + 0x98)" (* "*") (cast_expression "(uint *)(iVar11 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 + 0x98)" (( "(") (binary_expression "iVar11 + 0x98" (identifier "iVar11") (+ "+") (number_literal "0x98")) () ")")))) (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "auStack_288[0] = SUB41(pcStack_27c,0);" (assignment_expression "auStack_288[0] = SUB41(pcStack_27c,0)" (subscript_expression "auStack_288[0]" (identifier "auStack_288") ([ "[") (number_literal "0") (] "]")) (= "=") (call_expression "SUB41(pcStack_27c,0)" (identifier "SUB41") (argument_list "(pcStack_27c,0)" (( "(") (identifier "pcStack_27c") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "(*pcVar3)(pcVar14,auStack_288);" (call_expression "(*pcVar3)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "(pcVar14,auStack_288)" (( "(") (identifier "pcVar14") (, ",") (identifier "auStack_288") () ")"))) (; ";")) (if_statement "if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;" (if "if") (parenthesized_expression "(pcStack_27c == (code *)&DAT_00000008)" (( "(") (binary_expression "pcStack_27c == (code *)&DAT_00000008" (identifier "pcStack_27c") (== "==") (cast_expression "(code *)&DAT_00000008" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_00000008" (& "&") (identifier "DAT_00000008")))) () ")")) (goto_statement "goto LAB_000eb4cc;" (goto "goto") (statement_identifier "LAB_000eb4cc") (; ";"))) (expression_statement "iVar11 = *(int *)(pcVar14 + 0xc);" (assignment_expression "iVar11 = *(int *)(pcVar14 + 0xc)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcVar14 + 0xc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xc)" (( "(") (binary_expression "pcVar14 + 0xc" (identifier "pcVar14") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" (else "else") (compound_statement "{\nLAB_000eb4ac:\n                            auStack_288[0] = 0;\n                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                            iVar11 = *(int *)(pcVar14 + 0xc);\n                          }" ({ "{") (labeled_statement "LAB_000eb4ac:\n                            auStack_288[0] = 0;" (statement_identifier "LAB_000eb4ac") (: ":") (expression_statement "auStack_288[0] = 0;" (assignment_expression "auStack_288[0] = 0" (subscript_expression "auStack_288[0]" (identifier "auStack_288") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";"))) (expression_statement "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);" (call_expression "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f0))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d69f0)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d69f0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d69f0)" (( "(") (binary_expression "pcVar16 + 0x3d69f0" (identifier "pcVar16") (+ "+") (number_literal "0x3d69f0")) () ")"))))) () ")")) (argument_list "(pcVar14,auStack_288)" (( "(") (identifier "pcVar14") (, ",") (identifier "auStack_288") () ")"))) (; ";")) (expression_statement "iVar11 = *(int *)(pcVar14 + 0xc);" (assignment_expression "iVar11 = *(int *)(pcVar14 + 0xc)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcVar14 + 0xc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xc)" (( "(") (binary_expression "pcVar14 + 0xc" (identifier "pcVar14") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(int *)(pcVar14 + 0xc) = iVar11 + 1;" (assignment_expression "*(int *)(pcVar14 + 0xc) = iVar11 + 1" (pointer_expression "*(int *)(pcVar14 + 0xc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xc)" (( "(") (binary_expression "pcVar14 + 0xc" (identifier "pcVar14") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "iVar11 + 1" (identifier "iVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }" (else "else") (compound_statement "{\nLAB_000eb5c8:\n                          auStack_288[0] = 8;\n                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);\n                        }" ({ "{") (labeled_statement "LAB_000eb5c8:\n                          auStack_288[0] = 8;" (statement_identifier "LAB_000eb5c8") (: ":") (expression_statement "auStack_288[0] = 8;" (assignment_expression "auStack_288[0] = 8" (subscript_expression "auStack_288[0]" (identifier "auStack_288") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "8")) (; ";"))) (expression_statement "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);" (call_expression "(**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f0))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d69f0)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d69f0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d69f0)" (( "(") (binary_expression "pcVar16 + 0x3d69f0" (identifier "pcVar16") (+ "+") (number_literal "0x3d69f0")) () ")"))))) () ")")) (argument_list "(pcVar14,auStack_288)" (( "(") (identifier "pcVar14") (, ",") (identifier "auStack_288") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_000eb4cc:\n                        pcVar20 = pcVar20 + 1;" (statement_identifier "LAB_000eb4cc") (: ":") (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "pcVar22 = pcVar22 + 0x10;" (assignment_expression "pcVar22 = pcVar22 + 0x10" (identifier "pcVar22") (= "=") (binary_expression "pcVar22 + 0x10" (identifier "pcVar22") (+ "+") (number_literal "0x10"))) (; ";")) (expression_statement "pcVar3 = pcStack_224;" (assignment_expression "pcVar3 = pcStack_224" (identifier "pcVar3") (= "=") (identifier "pcStack_224")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcStack_224 != pcVar20)" (( "(") (binary_expression "pcStack_224 != pcVar20" (identifier "pcStack_224") (!= "!=") (identifier "pcVar20")) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" (else "else") (compound_statement "{\n                    if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }\n                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);\n                    pcVar3 = pcStack_280;\n                    if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }\n                  }" ({ "{") (if_statement "if (pcStack_22c != (code *)&DAT_00000004) {\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }" (if "if") (parenthesized_expression "(pcStack_22c != (code *)&DAT_00000004)" (( "(") (binary_expression "pcStack_22c != (code *)&DAT_00000004" (identifier "pcStack_22c") (!= "!=") (cast_expression "(code *)&DAT_00000004" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_00000004" (& "&") (identifier "DAT_00000004")))) () ")")) (compound_statement "{\n                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);\n                      return pcVar4;\n                    }" ({ "{") (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68c4)" (( "(") (binary_expression "pcVar16 + 0x3d68c4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68c4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,\n                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158)" (( "(") (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x3588" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d6110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6110)" (( "(") (binary_expression "pcVar16 + 0x3d6110" (identifier "pcVar16") (+ "+") (number_literal "0x3d6110")) () ")")))) (+ "+") (number_literal "0x3588")) (, ",") (number_literal "0x279c") (, ",") (binary_expression "*(int *)(pcVar16 + 0x3d68e4) + -0x4158" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")")))) (+ "+") (number_literal "-0x4158")) () ")"))))) (; ";")) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (expression_statement "pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);" (assignment_expression "pcStack_280 = *(code **)(pcVar16 + 0x3d69b8)" (identifier "pcStack_280") (= "=") (pointer_expression "*(code **)(pcVar16 + 0x3d69b8)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d69b8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d69b8)" (( "(") (binary_expression "pcVar16 + 0x3d69b8" (identifier "pcVar16") (+ "+") (number_literal "0x3d69b8")) () ")"))))) (; ";")) (expression_statement "pcVar3 = pcStack_280;" (assignment_expression "pcVar3 = pcStack_280" (identifier "pcVar3") (= "=") (identifier "pcStack_280")) (; ";")) (if_statement "if (pcStack_224 != (code *)0x0) {\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" (if "if") (parenthesized_expression "(pcStack_224 != (code *)0x0)" (( "(") (binary_expression "pcStack_224 != (code *)0x0" (identifier "pcStack_224") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);\n                      pcVar20 = (code *)0x0;\n                      pcVar4 = pcStack_228;\n                      do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);\n                    }" ({ "{") (expression_statement "pcVar22 = *(code **)(pcVar16 + 0x3d69f0);" (assignment_expression "pcVar22 = *(code **)(pcVar16 + 0x3d69f0)" (identifier "pcVar22") (= "=") (pointer_expression "*(code **)(pcVar16 + 0x3d69f0)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d69f0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d69f0)" (( "(") (binary_expression "pcVar16 + 0x3d69f0" (identifier "pcVar16") (+ "+") (number_literal "0x3d69f0")) () ")"))))) (; ";")) (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" (identifier "pcVar20") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" (identifier "pcVar4") (= "=") (identifier "pcStack_228")) (; ";")) (do_statement "do {\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      } while (pcStack_224 != pcVar20);" (do "do") (compound_statement "{\n                        while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }\n                        pcVar3 = *(code **)(pcVar4 + 8);\n                        if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }\n                        pcVar20 = pcVar20 + 1;\n                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;\n                        pcVar4 = pcVar4 + 0x18;\n                        pcVar3 = pcStack_224;\n                      }" ({ "{") (while_statement "while ((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }" (while "while") (parenthesized_expression "((cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0)))" (( "(") (parenthesized_expression "(cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))" (( "(") (binary_expression "cStack_219 != '\0' &&\n                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0)" (binary_expression "cStack_219 != '\0'" (identifier "cStack_219") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (&& "&&") (parenthesized_expression "(iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0)" (( "(") (comma_expression "iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0" (assignment_expression "iVar2 = (**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcVar16 + 0x3d69f4))\n                                                  (uStack_220,piVar5,uStack_230)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d69f4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d69f4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d69f4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d69f4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d69f4)" (( "(") (binary_expression "pcVar16 + 0x3d69f4" (identifier "pcVar16") (+ "+") (number_literal "0x3d69f4")) () ")"))))) () ")")) (argument_list "(uStack_220,piVar5,uStack_230)" (( "(") (identifier "uStack_220") (, ",") (identifier "piVar5") (, ",") (identifier "uStack_230") () ")")))) (, ",") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0"))) () ")"))) () ")")) () ")")) (compound_statement "{\nLAB_000eb42c:\n                          auStack_288[0] = 8;\n                          (*pcVar22)(pcVar14,auStack_288);\n                          pcVar20 = pcVar20 + 1;\n                          pcVar4 = pcVar4 + 0x18;\n                          if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }\n                        }" ({ "{") (labeled_statement "LAB_000eb42c:\n                          auStack_288[0] = 8;" (statement_identifier "LAB_000eb42c") (: ":") (expression_statement "auStack_288[0] = 8;" (assignment_expression "auStack_288[0] = 8" (subscript_expression "auStack_288[0]" (identifier "auStack_288") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "8")) (; ";"))) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" (( "(") (pointer_expression "*pcVar22" (* "*") (identifier "pcVar22")) () ")")) (argument_list "(pcVar14,auStack_288)" (( "(") (identifier "pcVar14") (, ",") (identifier "auStack_288") () ")"))) (; ";")) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar4 = pcVar4 + 0x18;" (assignment_expression "pcVar4 = pcVar4 + 0x18" (identifier "pcVar4") (= "=") (binary_expression "pcVar4 + 0x18" (identifier "pcVar4") (+ "+") (number_literal "0x18"))) (; ";")) (if_statement "if (pcStack_224 == pcVar20) {\n                            return pcStack_224;\n                          }" (if "if") (parenthesized_expression "(pcStack_224 == pcVar20)" (( "(") (binary_expression "pcStack_224 == pcVar20" (identifier "pcStack_224") (== "==") (identifier "pcVar20")) () ")")) (compound_statement "{\n                            return pcStack_224;\n                          }" ({ "{") (return_statement "return pcStack_224;" (return "return") (identifier "pcStack_224") (; ";")) (} "}"))) (} "}"))) (expression_statement "pcVar3 = *(code **)(pcVar4 + 8);" (assignment_expression "pcVar3 = *(code **)(pcVar4 + 8)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(pcVar4 + 8)" (* "*") (cast_expression "(code **)(pcVar4 + 8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + 8)" (( "(") (binary_expression "pcVar4 + 8" (identifier "pcVar4") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (pcVar3 < pcStack_218) {\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }\n                        else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }" (if "if") (parenthesized_expression "(pcVar3 < pcStack_218)" (( "(") (binary_expression "pcVar3 < pcStack_218" (identifier "pcVar3") (< "<") (identifier "pcStack_218")) () ")")) (compound_statement "{\n                          if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }\n                          iVar11 = (int)pcVar3 * 0x18;\n                          pcVar15 = pcVar21 + iVar11;\n                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);\n                          uVar6 = (uint)(byte)pcVar4[0xf];\n                          if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }\n                          if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                        }" ({ "{") (if_statement "if (pcVar21 == (code *)0x0) {\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }" (if "if") (parenthesized_expression "(pcVar21 == (code *)0x0)" (( "(") (binary_expression "pcVar21 == (code *)0x0" (identifier "pcVar21") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);\n                            return pcVar4;\n                          }" ({ "{") (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68c4)" (( "(") (binary_expression "pcVar16 + 0x3d68c4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68c4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,\n                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0)" (( "(") (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x39d4" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d6110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6110)" (( "(") (binary_expression "pcVar16 + 0x3d6110" (identifier "pcVar16") (+ "+") (number_literal "0x3d6110")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (binary_expression "*(int *)(pcVar16 + 0x3d68e4) + -0x41a0" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")")))) (+ "+") (number_literal "-0x41a0")) () ")"))))) (; ";")) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (expression_statement "iVar11 = (int)pcVar3 * 0x18;" (assignment_expression "iVar11 = (int)pcVar3 * 0x18" (identifier "iVar11") (= "=") (binary_expression "(int)pcVar3 * 0x18" (cast_expression "(int)pcVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar3")) (* "*") (number_literal "0x18"))) (; ";")) (expression_statement "pcVar15 = pcVar21 + iVar11;" (assignment_expression "pcVar15 = pcVar21 + iVar11" (identifier "pcVar15") (= "=") (binary_expression "pcVar21 + iVar11" (identifier "pcVar21") (+ "+") (identifier "iVar11"))) (; ";")) (expression_statement "uVar17 = (uint)*(ushort *)(pcVar15 + 6);" (assignment_expression "uVar17 = (uint)*(ushort *)(pcVar15 + 6)" (identifier "uVar17") (= "=") (binary_expression "(uint)*(ushort *)(pcVar15 + 6)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(ushort *)(pcVar15 + 6)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 6)" (( "(") (binary_expression "pcVar15 + 6" (identifier "pcVar15") (+ "+") (number_literal "6")) () ")"))))) (; ";")) (expression_statement "uVar6 = (uint)(byte)pcVar4[0xf];" (assignment_expression "uVar6 = (uint)(byte)pcVar4[0xf]" (identifier "uVar6") (= "=") (cast_expression "(uint)(byte)pcVar4[0xf]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)pcVar4[0xf]" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (subscript_expression "pcVar4[0xf]" (identifier "pcVar4") ([ "[") (number_literal "0xf") (] "]"))))) (; ";")) (if_statement "if (uVar17 < 0xff00) {\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }\n                          else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }" (if "if") (parenthesized_expression "(uVar17 < 0xff00)" (( "(") (binary_expression "uVar17 < 0xff00" (identifier "uVar17") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;\n                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);\n                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }\n                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;\n                            cVar1 = pcVar15[4];\n                          }" ({ "{") (labeled_statement "LAB_000eb354:\n                            if (uVar17 == 0) goto LAB_000eb278;" (statement_identifier "LAB_000eb354") (: ":") (if_statement "if (uVar17 == 0) goto LAB_000eb278;" (if "if") (parenthesized_expression "(uVar17 == 0)" (( "(") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000eb278;" (goto "goto") (statement_identifier "LAB_000eb278") (; ";")))) (expression_statement "iVar2 = *(int *)(pcVar16 + 0x3d68e4);" (assignment_expression "iVar2 = *(int *)(pcVar16 + 0x3d68e4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")"))))) (; ";")) (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }" (if "if") (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17)" (( "(") (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" (( "(") (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" (identifier "piVar5") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar17")) () ")")) (compound_statement "{\nLAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);\n                              return pcVar4;\n                            }" ({ "{") (labeled_statement "LAB_000eb860:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);" (statement_identifier "LAB_000eb860") (: ":") (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68c4)" (( "(") (binary_expression "pcVar16 + 0x3d68c4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68c4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x50b,iVar2 + -0x34dc)" (( "(") (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d6110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6110)" (( "(") (binary_expression "pcVar16 + 0x3d6110" (identifier "pcVar16") (+ "+") (number_literal "0x3d6110")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x50b") (, ",") (binary_expression "iVar2 + -0x34dc" (identifier "iVar2") (+ "+") (number_literal "-0x34dc")) () ")"))))) (; ";"))) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (if_statement "if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;" (if "if") (parenthesized_expression "(*(int *)(piVar5[0xe] + uVar17 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar5[0xe] + uVar17 * 4) == 0" (pointer_expression "*(int *)(piVar5[0xe] + uVar17 * 4)" (* "*") (cast_expression "(int *)(piVar5[0xe] + uVar17 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0xe] + uVar17 * 4)" (( "(") (binary_expression "piVar5[0xe] + uVar17 * 4" (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar17 * 4" (identifier "uVar17") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000eb42c;" (goto "goto") (statement_identifier "LAB_000eb42c") (; ";"))) (expression_statement "cVar1 = pcVar15[4];" (assignment_expression "cVar1 = pcVar15[4]" (identifier "cVar1") (= "=") (subscript_expression "pcVar15[4]" (identifier "pcVar15") ([ "[") (number_literal "4") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }" (else "else") (compound_statement "{\n                            if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }\nLAB_000eb278:\n                            cVar1 = pcVar15[4];\n                          }" ({ "{") (if_statement "if (uVar17 == 0xffff) {\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }" (if "if") (parenthesized_expression "(uVar17 == 0xffff)" (( "(") (binary_expression "uVar17 == 0xffff" (identifier "uVar17") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                              iVar2 = piVar5[0xc];\n                              iStack_270 = iVar11;\n                              pcStack_27c = pcVar3;\n                              uStack_278 = uVar6;\n                              pcStack_274 = pcVar15;\n                              if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }\n                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);\n                              iVar11 = iStack_270;\n                              pcVar3 = pcStack_27c;\n                              uVar6 = uStack_278;\n                              pcVar15 = pcStack_274;\n                              goto LAB_000eb354;\n                            }" ({ "{") (expression_statement "iVar2 = piVar5[0xc];" (assignment_expression "iVar2 = piVar5[0xc]" (identifier "iVar2") (= "=") (subscript_expression "piVar5[0xc]" (identifier "piVar5") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "iStack_270 = iVar11;" (assignment_expression "iStack_270 = iVar11" (identifier "iStack_270") (= "=") (identifier "iVar11")) (; ";")) (expression_statement "pcStack_27c = pcVar3;" (assignment_expression "pcStack_27c = pcVar3" (identifier "pcStack_27c") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "uStack_278 = uVar6;" (assignment_expression "uStack_278 = uVar6" (identifier "uStack_278") (= "=") (identifier "uVar6")) (; ";")) (expression_statement "pcStack_274 = pcVar15;" (assignment_expression "pcStack_274 = pcVar15" (identifier "pcStack_274") (= "=") (identifier "pcVar15")) (; ";")) (if_statement "if (iVar2 == 0) {\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);\n                                piVar5[0xc] = iVar2;\n                              }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar5 + 0x6c))(piVar5)" (parenthesized_expression "(**(code **)(*piVar5 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar5 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar5 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar5 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x6c)" (( "(") (binary_expression "*piVar5 + 0x6c" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar5)" (( "(") (identifier "piVar5") () ")")))) (; ";")) (expression_statement "piVar5[0xc] = iVar2;" (assignment_expression "piVar5[0xc] = iVar2" (subscript_expression "piVar5[0xc]" (identifier "piVar5") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar2")) (; ";")) (} "}"))) (expression_statement "uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);" (assignment_expression "uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c)" (identifier "uVar17") (= "=") (call_expression "(**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d6944))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d6944)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d6944)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d6944)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6944)" (( "(") (binary_expression "pcVar16 + 0x3d6944" (identifier "pcVar16") (+ "+") (number_literal "0x3d6944")) () ")"))))) () ")")) (argument_list "(iVar2,piVar5,pcStack_27c)" (( "(") (identifier "iVar2") (, ",") (identifier "piVar5") (, ",") (identifier "pcStack_27c") () ")")))) (; ";")) (expression_statement "iVar11 = iStack_270;" (assignment_expression "iVar11 = iStack_270" (identifier "iVar11") (= "=") (identifier "iStack_270")) (; ";")) (expression_statement "pcVar3 = pcStack_27c;" (assignment_expression "pcVar3 = pcStack_27c" (identifier "pcVar3") (= "=") (identifier "pcStack_27c")) (; ";")) (expression_statement "uVar6 = uStack_278;" (assignment_expression "uVar6 = uStack_278" (identifier "uVar6") (= "=") (identifier "uStack_278")) (; ";")) (expression_statement "pcVar15 = pcStack_274;" (assignment_expression "pcVar15 = pcStack_274" (identifier "pcVar15") (= "=") (identifier "pcStack_274")) (; ";")) (goto_statement "goto LAB_000eb354;" (goto "goto") (statement_identifier "LAB_000eb354") (; ";")) (} "}"))) (labeled_statement "LAB_000eb278:\n                            cVar1 = pcVar15[4];" (statement_identifier "LAB_000eb278") (: ":") (expression_statement "cVar1 = pcVar15[4];" (assignment_expression "cVar1 = pcVar15[4]" (identifier "cVar1") (= "=") (subscript_expression "pcVar15[4]" (identifier "pcVar15") ([ "[") (number_literal "4") (] "]"))) (; ";"))) (} "}")))) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }\n                          else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;\n                            auStack_288[0] = 1;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" ({ "{") (if_statement "if (*(code **)(*piVar5 + 0x60) == pcStack_280) {\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }\n                            else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" (if "if") (parenthesized_expression "(*(code **)(*piVar5 + 0x60) == pcStack_280)" (( "(") (binary_expression "*(code **)(*piVar5 + 0x60) == pcStack_280" (pointer_expression "*(code **)(*piVar5 + 0x60)" (* "*") (cast_expression "(code **)(*piVar5 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x60)" (( "(") (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcStack_280")) () ")")) (compound_statement "{\n                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }\n                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" ({ "{") (if_statement "if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }" (if "if") (parenthesized_expression "((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17)" (( "(") (binary_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17" (call_expression "(uint)(piVar5[0xf] - piVar5[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar5[0xf] - piVar5[0xe] >> 2)" (( "(") (binary_expression "piVar5[0xf] - piVar5[0xe] >> 2" (binary_expression "piVar5[0xf] - piVar5[0xe]" (subscript_expression "piVar5[0xf]" (identifier "piVar5") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar17")) () ")")) (compound_statement "{\nLAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);\n                                return pcVar4;\n                              }" ({ "{") (labeled_statement "LAB_000eb840:\n                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);" (statement_identifier "LAB_000eb840") (: ":") (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68c4)" (( "(") (binary_expression "pcVar16 + 0x3d68c4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68c4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0)" (( "(") (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d6110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6110)" (( "(") (binary_expression "pcVar16 + 0x3d6110" (identifier "pcVar16") (+ "+") (number_literal "0x3d6110")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x5c8") (, ",") (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                  -0x33a0" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")")))) (+ "+") (number_literal "-0x33a0")) () ")"))))) (; ";"))) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (expression_statement "iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);" (assignment_expression "iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar5[0xe] + uVar17 * 4)" (* "*") (cast_expression "(int *)(piVar5[0xe] + uVar17 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0xe] + uVar17 * 4)" (( "(") (binary_expression "piVar5[0xe] + uVar17 * 4" (subscript_expression "piVar5[0xe]" (identifier "piVar5") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar17 * 4" (identifier "uVar17") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" (else "else") (compound_statement "{\n                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);\n                              uVar17 = *(uint *)(iVar2 + 0x98);\n                            }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);" (assignment_expression "iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar5 + 0x60))(piVar5,uVar17)" (parenthesized_expression "(**(code **)(*piVar5 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar5 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar5 + 0x60)" (* "*") (cast_expression "(code **)(*piVar5 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar5 + 0x60)" (( "(") (binary_expression "*piVar5 + 0x60" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar5,uVar17)" (( "(") (identifier "piVar5") (, ",") (identifier "uVar17") () ")")))) (; ";")) (expression_statement "uVar17 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar17 = *(uint *)(iVar2 + 0x98)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "uVar17 & 0x7fffffff | 0x80000000" (binary_expression "uVar17 & 0x7fffffff" (identifier "uVar17") (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "auStack_288[0] = 1;" (assignment_expression "auStack_288[0] = 1" (subscript_expression "auStack_288[0]" (identifier "auStack_288") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "1")) (; ";")) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" (( "(") (pointer_expression "*pcVar22" (* "*") (identifier "pcVar22")) () ")")) (argument_list "(pcVar14,auStack_288)" (( "(") (identifier "pcVar14") (, ",") (identifier "auStack_288") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" (else "else") (compound_statement "{\n                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;\n                            piVar7 = (int *)(piVar5[0x3a] + iVar11);\n                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }\n                            iVar2 = *piVar7;\n                            if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }\n                            *piVar7 = -2;\n                            auStack_288[0] = 0;\n                            (*pcVar22)(pcVar14,auStack_288);\n                          }" ({ "{") (if_statement "if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;" (if "if") (parenthesized_expression "((uVar6 == 0) && (pcVar3 == (code *)0x0))" (( "(") (binary_expression "(uVar6 == 0) && (pcVar3 == (code *)0x0)" (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(pcVar3 == (code *)0x0)" (( "(") (binary_expression "pcVar3 == (code *)0x0" (identifier "pcVar3") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")"))) () ")")) (goto_statement "goto LAB_000eb42c;" (goto "goto") (statement_identifier "LAB_000eb42c") (; ";"))) (expression_statement "piVar7 = (int *)(piVar5[0x3a] + iVar11);" (assignment_expression "piVar7 = (int *)(piVar5[0x3a] + iVar11)" (identifier "piVar7") (= "=") (cast_expression "(int *)(piVar5[0x3a] + iVar11)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0x3a] + iVar11)" (( "(") (binary_expression "piVar5[0x3a] + iVar11" (subscript_expression "piVar5[0x3a]" (identifier "piVar5") ([ "[") (number_literal "0x3a") (] "]")) (+ "+") (identifier "iVar11")) () ")")))) (; ";")) (if_statement "if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               ) {\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }" (if "if") (parenthesized_expression "((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3\n                               )" (( "(") (binary_expression "(code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3" (cast_expression "(code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555)" (( "(") (binary_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555" (parenthesized_expression "(piVar5[0x3b] - piVar5[0x3a] >> 3)" (( "(") (binary_expression "piVar5[0x3b] - piVar5[0x3a] >> 3" (binary_expression "piVar5[0x3b] - piVar5[0x3a]" (subscript_expression "piVar5[0x3b]" (identifier "piVar5") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar5[0x3a]" (identifier "piVar5") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "3")) () ")")) (* "*") (number_literal "-0x55555555")) () ")"))) (<= "<=") (identifier "pcVar3")) () ")")) (compound_statement "{\nLAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);\n                              return pcVar4;\n                            }" ({ "{") (labeled_statement "LAB_000eb808:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);" (statement_identifier "LAB_000eb808") (: ":") (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68c4)" (( "(") (binary_expression "pcVar16 + 0x3d68c4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68c4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128)" (( "(") (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d6110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6110)" (( "(") (binary_expression "pcVar16 + 0x3d6110" (identifier "pcVar16") (+ "+") (number_literal "0x3d6110")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x8e3") (, ",") (binary_expression "*(int *)(pcVar16 + 0x3d68e4) +\n                                                                -0x4128" (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")")))) (+ "+") (number_literal "-0x4128")) () ")"))))) (; ";"))) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (expression_statement "iVar2 = *piVar7;" (assignment_expression "iVar2 = *piVar7" (identifier "iVar2") (= "=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) (; ";")) (if_statement "if ((iVar2 != 0) && (iVar2 != -2)) {\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }" (if "if") (parenthesized_expression "((iVar2 != 0) && (iVar2 != -2))" (( "(") (binary_expression "(iVar2 != 0) && (iVar2 != -2)" (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar2 != -2)" (( "(") (binary_expression "iVar2 != -2" (identifier "iVar2") (!= "!=") (number_literal "-2")) () ")"))) () ")")) (compound_statement "{\n                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);\nLAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);\n                              return pcVar4;\n                            }" ({ "{") (expression_statement "iVar12 = *(int *)(pcVar16 + 0x3d68e4);" (assignment_expression "iVar12 = *(int *)(pcVar16 + 0x3d68e4)" (identifier "iVar12") (= "=") (pointer_expression "*(int *)(pcVar16 + 0x3d68e4)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d68e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68e4)" (( "(") (binary_expression "pcVar16 + 0x3d68e4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68e4")) () ")"))))) (; ";")) (labeled_statement "LAB_000eb2d8:\n                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);" (statement_identifier "LAB_000eb2d8") (: ":") (expression_statement "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524);" (assignment_expression "pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar16 + 0x3d68c4))\n                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" (parenthesized_expression "(**(code **)(pcVar16 + 0x3d68c4))" (( "(") (pointer_expression "**(code **)(pcVar16 + 0x3d68c4)" (* "*") (pointer_expression "*(code **)(pcVar16 + 0x3d68c4)" (* "*") (cast_expression "(code **)(pcVar16 + 0x3d68c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar16 + 0x3d68c4)" (( "(") (binary_expression "pcVar16 + 0x3d68c4" (identifier "pcVar16") (+ "+") (number_literal "0x3d68c4")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar16 + 0x3d6110) + 0x4570,\n                                                          0x71f,iVar12 + -0x3524)" (( "(") (binary_expression "*(int *)(pcVar16 + 0x3d6110) + 0x4570" (pointer_expression "*(int *)(pcVar16 + 0x3d6110)" (* "*") (cast_expression "(int *)(pcVar16 + 0x3d6110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar16 + 0x3d6110)" (( "(") (binary_expression "pcVar16 + 0x3d6110" (identifier "pcVar16") (+ "+") (number_literal "0x3d6110")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x71f") (, ",") (binary_expression "iVar12 + -0x3524" (identifier "iVar12") (+ "+") (number_literal "-0x3524")) () ")"))))) (; ";"))) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (expression_statement "*piVar7 = -2;" (assignment_expression "*piVar7 = -2" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (= "=") (number_literal "-2")) (; ";")) (expression_statement "auStack_288[0] = 0;" (assignment_expression "auStack_288[0] = 0" (subscript_expression "auStack_288[0]" (identifier "auStack_288") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" (( "(") (pointer_expression "*pcVar22" (* "*") (identifier "pcVar22")) () ")")) (argument_list "(pcVar14,auStack_288)" (( "(") (identifier "pcVar14") (, ",") (identifier "auStack_288") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }" (else "else") (compound_statement "{\n                          auStack_288[0] = 0;\n                          (*pcVar22)(pcVar14,auStack_288);\n                        }" ({ "{") (expression_statement "auStack_288[0] = 0;" (assignment_expression "auStack_288[0] = 0" (subscript_expression "auStack_288[0]" (identifier "auStack_288") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "(*pcVar22)(pcVar14,auStack_288);" (call_expression "(*pcVar22)(pcVar14,auStack_288)" (parenthesized_expression "(*pcVar22)" (( "(") (pointer_expression "*pcVar22" (* "*") (identifier "pcVar22")) () ")")) (argument_list "(pcVar14,auStack_288)" (( "(") (identifier "pcVar14") (, ",") (identifier "auStack_288") () ")"))) (; ";")) (} "}")))) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;" (assignment_expression "*(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1" (pointer_expression "*(int *)(pcVar14 + 0xc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xc)" (( "(") (binary_expression "pcVar14 + 0xc" (identifier "pcVar14") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "*(int *)(pcVar14 + 0xc) + 1" (pointer_expression "*(int *)(pcVar14 + 0xc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xc)" (( "(") (binary_expression "pcVar14 + 0xc" (identifier "pcVar14") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar4 = pcVar4 + 0x18;" (assignment_expression "pcVar4 = pcVar4 + 0x18" (identifier "pcVar4") (= "=") (binary_expression "pcVar4 + 0x18" (identifier "pcVar4") (+ "+") (number_literal "0x18"))) (; ";")) (expression_statement "pcVar3 = pcStack_224;" (assignment_expression "pcVar3 = pcStack_224" (identifier "pcVar3") (= "=") (identifier "pcStack_224")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcStack_224 != pcVar20)" (( "(") (binary_expression "pcStack_224 != pcVar20" (identifier "pcStack_224") (!= "!=") (identifier "pcVar20")) () ")")) (; ";")) (} "}"))) (} "}")))) (return_statement "return pcVar3;" (return "return") (identifier "pcVar3") (; ";")) (} "}"))) (expression_statement "pcStack_218 = *(code **)(pcVar14 + 0x3d7018);" (assignment_expression "pcStack_218 = *(code **)(pcVar14 + 0x3d7018)" (identifier "pcStack_218") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x3d7018)" (* "*") (cast_expression "(code **)(pcVar14 + 0x3d7018)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x3d7018)" (( "(") (binary_expression "pcVar14 + 0x3d7018" (identifier "pcVar14") (+ "+") (number_literal "0x3d7018")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcStack_218;" (assignment_expression "pcVar4 = pcStack_218" (identifier "pcVar4") (= "=") (identifier "pcStack_218")) (; ";")) (if_statement "if (pcStack_1c4 != (code *)0x0) {\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }" (if "if") (parenthesized_expression "(pcStack_1c4 != (code *)0x0)" (( "(") (binary_expression "pcStack_1c4 != (code *)0x0" (identifier "pcStack_1c4") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);\n                  pcVar20 = (code *)0x0;\n                  pcVar23 = (code *)&uStack_220;\n                  puVar18 = (uint *)&DAT_aaaaaaab;\nLAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }\n                  pcVar4 = pcStack_228;\n                  pcVar14 = *(code **)(pcVar15 + 8);\n                  if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }\n                  pcVar20 = pcVar20 + 1;\n                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;\n                  pcVar15 = pcVar15 + 0x18;\n                  if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }\n                  goto LAB_000eabc8;\n                }" ({ "{") (expression_statement "pcVar24 = *(code **)(pcVar14 + 0x3d7050);" (assignment_expression "pcVar24 = *(code **)(pcVar14 + 0x3d7050)" (identifier "pcVar24") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x3d7050)" (* "*") (cast_expression "(code **)(pcVar14 + 0x3d7050)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x3d7050)" (( "(") (binary_expression "pcVar14 + 0x3d7050" (identifier "pcVar14") (+ "+") (number_literal "0x3d7050")) () ")"))))) (; ";")) (expression_statement "pcVar20 = (code *)0x0;" (assignment_expression "pcVar20 = (code *)0x0" (identifier "pcVar20") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar23 = (code *)&uStack_220;" (assignment_expression "pcVar23 = (code *)&uStack_220" (identifier "pcVar23") (= "=") (cast_expression "(code *)&uStack_220" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&uStack_220" (& "&") (identifier "uStack_220")))) (; ";")) (expression_statement "puVar18 = (uint *)&DAT_aaaaaaab;" (assignment_expression "puVar18 = (uint *)&DAT_aaaaaaab" (identifier "puVar18") (= "=") (cast_expression "(uint *)&DAT_aaaaaaab" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_aaaaaaab" (& "&") (identifier "DAT_aaaaaaab")))) (; ";")) (labeled_statement "LAB_000eabc8:\n                  while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }" (statement_identifier "LAB_000eabc8") (: ":") (while_statement "while (uVar17 != 0) {\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }" (while "while") (parenthesized_expression "(uVar17 != 0)" (( "(") (binary_expression "uVar17 != 0" (identifier "uVar17") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    pcStack_22c = *(code **)(pcVar15 + 4);\n                    uStack_230 = *(undefined4 *)pcVar15;\n                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);\n                    if (iVar2 != 0) break;\nLAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);\n                    (*pcVar24)(pcVar22,pcVar23);\n                    pcVar20 = pcVar20 + 1;\n                    pcVar15 = pcVar15 + 0x18;\n                    if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }\n                  }" ({ "{") (expression_statement "pcStack_22c = *(code **)(pcVar15 + 4);" (assignment_expression "pcStack_22c = *(code **)(pcVar15 + 4)" (identifier "pcStack_22c") (= "=") (pointer_expression "*(code **)(pcVar15 + 4)" (* "*") (cast_expression "(code **)(pcVar15 + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 4)" (( "(") (binary_expression "pcVar15 + 4" (identifier "pcVar15") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "uStack_230 = *(undefined4 *)pcVar15;" (assignment_expression "uStack_230 = *(undefined4 *)pcVar15" (identifier "uStack_230") (= "=") (pointer_expression "*(undefined4 *)pcVar15" (* "*") (cast_expression "(undefined4 *)pcVar15" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15")))) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);" (assignment_expression "iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_228 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_228 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_228 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_228 + -0x76e0)" (( "(") (binary_expression "pcStack_228 + -0x76e0" (identifier "pcStack_228") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(uStack_1c0,piVar13,uStack_1d0)" (( "(") (identifier "uStack_1c0") (, ",") (identifier "piVar13") (, ",") (identifier "uStack_1d0") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) break;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_000eacb4:\n                    uStack_220 = CONCAT13(8,uStack_220._1_3_);" (statement_identifier "LAB_000eacb4") (: ":") (expression_statement "uStack_220 = CONCAT13(8,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(8,uStack_220._1_3_)" (identifier "uStack_220") (= "=") (call_expression "CONCAT13(8,uStack_220._1_3_)" (identifier "CONCAT13") (argument_list "(8,uStack_220._1_3_)" (( "(") (number_literal "8") (, ",") (field_expression "uStack_220._1_3_" (identifier "uStack_220") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar22,pcVar23)" (( "(") (identifier "pcVar22") (, ",") (identifier "pcVar23") () ")"))) (; ";")) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar15 = pcVar15 + 0x18;" (assignment_expression "pcVar15 = pcVar15 + 0x18" (identifier "pcVar15") (= "=") (binary_expression "pcVar15 + 0x18" (identifier "pcVar15") (+ "+") (number_literal "0x18"))) (; ";")) (if_statement "if (pcStack_1c4 == pcVar20) {\n                      return pcStack_1c4;\n                    }" (if "if") (parenthesized_expression "(pcStack_1c4 == pcVar20)" (( "(") (binary_expression "pcStack_1c4 == pcVar20" (identifier "pcStack_1c4") (== "==") (identifier "pcVar20")) () ")")) (compound_statement "{\n                      return pcStack_1c4;\n                    }" ({ "{") (return_statement "return pcStack_1c4;" (return "return") (identifier "pcStack_1c4") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" (identifier "pcVar4") (= "=") (identifier "pcStack_228")) (; ";")) (expression_statement "pcVar14 = *(code **)(pcVar15 + 8);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 8)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar15 + 8)" (* "*") (cast_expression "(code **)(pcVar15 + 8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 8)" (( "(") (binary_expression "pcVar15 + 8" (identifier "pcVar15") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (pcVar14 < pcStack_1b8) {\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }\n                  else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }" (if "if") (parenthesized_expression "(pcVar14 < pcStack_1b8)" (( "(") (binary_expression "pcVar14 < pcStack_1b8" (identifier "pcVar14") (< "<") (identifier "pcStack_1b8")) () ")")) (compound_statement "{\n                    if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }\n                    iVar2 = (int)pcVar14 * 0x18;\n                    pcVar21 = pcVar3 + iVar2;\n                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);\n                    if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }\n                    pcVar4 = pcStack_228;\n                    if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                  }" ({ "{") (if_statement "if (pcVar3 == (code *)0x0) {\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }" (if "if") (parenthesized_expression "(pcVar3 == (code *)0x0)" (( "(") (binary_expression "pcVar3 == (code *)0x0" (identifier "pcVar3") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      (**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);\nLAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);\nLAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);\n                      goto LAB_000eb11c;\n                    }" ({ "{") (expression_statement "(**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);" (call_expression "(**(code **)(pcStack_228 + -0x7810))\n                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_228 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_228 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_228 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_228 + -0x7810)" (( "(") (binary_expression "pcStack_228 + -0x7810" (identifier "pcStack_228") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,\n                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140)" (( "(") (binary_expression "*(int *)(pcStack_228 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_228 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_228 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_228 + -0x7fc4)" (( "(") (binary_expression "pcStack_228 + -0x7fc4" (identifier "pcStack_228") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (binary_expression "*(int *)(pcStack_228 + -0x77f0) + -0x4140" (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_228 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_228 + -0x77f0)" (( "(") (binary_expression "pcStack_228 + -0x77f0" (identifier "pcStack_228") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x4140")) () ")"))) (; ";")) (labeled_statement "LAB_000eb0e4:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);" (statement_identifier "LAB_000eb0e4") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x4128)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x8e3") (, ",") (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x4128" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x4128")) () ")"))) (; ";"))) (labeled_statement "LAB_000eb100:\n                      (**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);" (statement_identifier "LAB_000eb100") (: ":") (expression_statement "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar4 + -0x7810))\n                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar4 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar4 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar4 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar4 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + -0x7810)" (( "(") (binary_expression "pcVar4 + -0x7810" (identifier "pcVar4") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,\n                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0)" (( "(") (binary_expression "*(int *)(pcVar4 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar4 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar4 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x7fc4)" (( "(") (binary_expression "pcVar4 + -0x7fc4" (identifier "pcVar4") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x5c8") (, ",") (binary_expression "*(int *)(pcVar4 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar4 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar4 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar4 + -0x77f0)" (( "(") (binary_expression "pcVar4 + -0x77f0" (identifier "pcVar4") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x33a0")) () ")"))) (; ";"))) (goto_statement "goto LAB_000eb11c;" (goto "goto") (statement_identifier "LAB_000eb11c") (; ";")) (} "}"))) (expression_statement "iVar2 = (int)pcVar14 * 0x18;" (assignment_expression "iVar2 = (int)pcVar14 * 0x18" (identifier "iVar2") (= "=") (binary_expression "(int)pcVar14 * 0x18" (cast_expression "(int)pcVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar14")) (* "*") (number_literal "0x18"))) (; ";")) (expression_statement "pcVar21 = pcVar3 + iVar2;" (assignment_expression "pcVar21 = pcVar3 + iVar2" (identifier "pcVar21") (= "=") (binary_expression "pcVar3 + iVar2" (identifier "pcVar3") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar21 + 6);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar21 + 6)" (identifier "uVar6") (= "=") (binary_expression "(uint)*(ushort *)(pcVar21 + 6)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(ushort *)(pcVar21 + 6)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 6)" (( "(") (binary_expression "pcVar21 + 6" (identifier "pcVar21") (+ "+") (number_literal "6")) () ")"))))) (; ";")) (if_statement "if (uVar6 < 0xff00) {\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }\n                    else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }" (if "if") (parenthesized_expression "(uVar6 < 0xff00)" (( "(") (binary_expression "uVar6 < 0xff00" (identifier "uVar6") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;\n                      iVar11 = *(int *)(pcStack_228 + -0x77f0);\n                      pcVar4 = pcStack_228;\n                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;\n                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;\n                      cVar1 = pcVar21[4];\n                    }" ({ "{") (labeled_statement "LAB_000eadbc:\n                      if (uVar6 == 0) goto LAB_000eac14;" (statement_identifier "LAB_000eadbc") (: ":") (if_statement "if (uVar6 == 0) goto LAB_000eac14;" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000eac14;" (goto "goto") (statement_identifier "LAB_000eac14") (; ";")))) (expression_statement "iVar11 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_228 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_228 + -0x77f0)" (( "(") (binary_expression "pcStack_228 + -0x77f0" (identifier "pcStack_228") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" (identifier "pcVar4") (= "=") (identifier "pcStack_228")) (; ";")) (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;" (if "if") (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" (identifier "piVar13") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000eb154;" (goto "goto") (statement_identifier "LAB_000eb154") (; ";"))) (if_statement "if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;" (if "if") (parenthesized_expression "(*(int *)(piVar13[0xe] + uVar6 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar13[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000eacb4;" (goto "goto") (statement_identifier "LAB_000eacb4") (; ";"))) (expression_statement "cVar1 = pcVar21[4];" (assignment_expression "cVar1 = pcVar21[4]" (identifier "cVar1") (= "=") (subscript_expression "pcVar21[4]" (identifier "pcVar21") ([ "[") (number_literal "4") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }" (else "else") (compound_statement "{\n                      if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }\nLAB_000eac14:\n                      cVar1 = pcVar21[4];\n                    }" ({ "{") (if_statement "if (uVar6 == 0xffff) {\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }" (if "if") (parenthesized_expression "(uVar6 == 0xffff)" (( "(") (binary_expression "uVar6 == 0xffff" (identifier "uVar6") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                        iVar11 = piVar13[0xc];\n                        pcStack_214 = pcVar14;\n                        iStack_20c = iVar2;\n                        pcStack_210 = pcVar21;\n                        if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }\n                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);\n                        pcVar14 = pcStack_214;\n                        iVar2 = iStack_20c;\n                        pcVar21 = pcStack_210;\n                        goto LAB_000eadbc;\n                      }" ({ "{") (expression_statement "iVar11 = piVar13[0xc];" (assignment_expression "iVar11 = piVar13[0xc]" (identifier "iVar11") (= "=") (subscript_expression "piVar13[0xc]" (identifier "piVar13") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "pcStack_214 = pcVar14;" (assignment_expression "pcStack_214 = pcVar14" (identifier "pcStack_214") (= "=") (identifier "pcVar14")) (; ";")) (expression_statement "iStack_20c = iVar2;" (assignment_expression "iStack_20c = iVar2" (identifier "iStack_20c") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "pcStack_210 = pcVar21;" (assignment_expression "pcStack_210 = pcVar21" (identifier "pcStack_210") (= "=") (identifier "pcVar21")) (; ";")) (if_statement "if (iVar11 == 0) {\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);\n                          piVar13[0xc] = iVar11;\n                        }" ({ "{") (expression_statement "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);" (assignment_expression "iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13)" (identifier "iVar11") (= "=") (call_expression "(**(code **)(*piVar13 + 0x6c))(piVar13)" (parenthesized_expression "(**(code **)(*piVar13 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar13 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar13 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar13 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x6c)" (( "(") (binary_expression "*piVar13 + 0x6c" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar13)" (( "(") (identifier "piVar13") () ")")))) (; ";")) (expression_statement "piVar13[0xc] = iVar11;" (assignment_expression "piVar13[0xc] = iVar11" (subscript_expression "piVar13[0xc]" (identifier "piVar13") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar11")) (; ";")) (} "}"))) (expression_statement "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);" (assignment_expression "uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" (identifier "uVar6") (= "=") (call_expression "(**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_228 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_228 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_228 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_228 + -0x7790)" (( "(") (binary_expression "pcStack_228 + -0x7790" (identifier "pcStack_228") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar11,piVar13,pcStack_214)" (( "(") (identifier "iVar11") (, ",") (identifier "piVar13") (, ",") (identifier "pcStack_214") () ")")))) (; ";")) (expression_statement "pcVar14 = pcStack_214;" (assignment_expression "pcVar14 = pcStack_214" (identifier "pcVar14") (= "=") (identifier "pcStack_214")) (; ";")) (expression_statement "iVar2 = iStack_20c;" (assignment_expression "iVar2 = iStack_20c" (identifier "iVar2") (= "=") (identifier "iStack_20c")) (; ";")) (expression_statement "pcVar21 = pcStack_210;" (assignment_expression "pcVar21 = pcStack_210" (identifier "pcVar21") (= "=") (identifier "pcStack_210")) (; ";")) (goto_statement "goto LAB_000eadbc;" (goto "goto") (statement_identifier "LAB_000eadbc") (; ";")) (} "}"))) (labeled_statement "LAB_000eac14:\n                      cVar1 = pcVar21[4];" (statement_identifier "LAB_000eac14") (: ":") (expression_statement "cVar1 = pcVar21[4];" (assignment_expression "cVar1 = pcVar21[4]" (identifier "cVar1") (= "=") (subscript_expression "pcVar21[4]" (identifier "pcVar21") ([ "[") (number_literal "4") (] "]"))) (; ";"))) (} "}")))) (expression_statement "pcVar4 = pcStack_228;" (assignment_expression "pcVar4 = pcStack_228" (identifier "pcVar4") (= "=") (identifier "pcStack_228")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) == 3) {\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }\n                    else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) == 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) == 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                      uStack_220 = CONCAT13(1,uStack_220._1_3_);\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" ({ "{") (if_statement "if (*(code **)(*piVar13 + 0x60) == pcStack_218) {\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }\n                      else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" (if "if") (parenthesized_expression "(*(code **)(*piVar13 + 0x60) == pcStack_218)" (( "(") (binary_expression "*(code **)(*piVar13 + 0x60) == pcStack_218" (pointer_expression "*(code **)(*piVar13 + 0x60)" (* "*") (cast_expression "(code **)(*piVar13 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x60)" (( "(") (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "pcStack_218")) () ")")) (compound_statement "{\n                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;\n                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" ({ "{") (if_statement "if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;" (if "if") (parenthesized_expression "((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar13[0xf] - piVar13[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar13[0xf] - piVar13[0xe] >> 2)" (( "(") (binary_expression "piVar13[0xf] - piVar13[0xe] >> 2" (binary_expression "piVar13[0xf] - piVar13[0xe]" (subscript_expression "piVar13[0xf]" (identifier "piVar13") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000eb100;" (goto "goto") (statement_identifier "LAB_000eb100") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar13[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar13[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar13[0xe] + uVar6 * 4" (subscript_expression "piVar13[0xe]" (identifier "piVar13") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" (else "else") (compound_statement "{\n                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);\n                        uVar6 = *(uint *)(iVar2 + 0x98);\n                      }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar13 + 0x60))(piVar13,uVar6)" (parenthesized_expression "(**(code **)(*piVar13 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar13 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar13 + 0x60)" (* "*") (cast_expression "(code **)(*piVar13 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar13 + 0x60)" (( "(") (binary_expression "*piVar13 + 0x60" (pointer_expression "*piVar13" (* "*") (identifier "piVar13")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar13,uVar6)" (( "(") (identifier "piVar13") (, ",") (identifier "uVar6") () ")")))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" (identifier "uVar6") (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_220 = CONCAT13(1,uStack_220._1_3_);" (assignment_expression "uStack_220 = CONCAT13(1,uStack_220._1_3_)" (identifier "uStack_220") (= "=") (call_expression "CONCAT13(1,uStack_220._1_3_)" (identifier "CONCAT13") (argument_list "(1,uStack_220._1_3_)" (( "(") (number_literal "1") (, ",") (field_expression "uStack_220._1_3_" (identifier "uStack_220") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar22,pcVar23)" (( "(") (identifier "pcVar22") (, ",") (identifier "pcVar23") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" (else "else") (compound_statement "{\n                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);\n                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;\n                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }\n                      *(int *)pcVar21 = -2;\n                      uStack_220 = uStack_220 & 0xffffff;\n                      (*pcVar24)(pcVar22,pcVar23);\n                    }" ({ "{") (expression_statement "pcVar21 = (code *)(piVar13[0x3a] + iVar2);" (assignment_expression "pcVar21 = (code *)(piVar13[0x3a] + iVar2)" (identifier "pcVar21") (= "=") (cast_expression "(code *)(piVar13[0x3a] + iVar2)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13[0x3a] + iVar2)" (( "(") (binary_expression "piVar13[0x3a] + iVar2" (subscript_expression "piVar13[0x3a]" (identifier "piVar13") ([ "[") (number_literal "0x3a") (] "]")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (if_statement "if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)\n                      goto LAB_000eb0e4;" (if "if") (parenthesized_expression "((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)" (( "(") (binary_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14" (cast_expression "(code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18)" (( "(") (binary_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18" (parenthesized_expression "(piVar13[0x3b] - piVar13[0x3a] >> 3)" (( "(") (binary_expression "piVar13[0x3b] - piVar13[0x3a] >> 3" (binary_expression "piVar13[0x3b] - piVar13[0x3a]" (subscript_expression "piVar13[0x3b]" (identifier "piVar13") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar13[0x3a]" (identifier "piVar13") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "3")) () ")")) (* "*") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18"))) () ")"))) (<= "<=") (identifier "pcVar14")) () ")")) (goto_statement "goto LAB_000eb0e4;" (goto "goto") (statement_identifier "LAB_000eb0e4") (; ";"))) (if_statement "if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }" (if "if") (parenthesized_expression "((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2))" (( "(") (binary_expression "(*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)" (parenthesized_expression "(*(int *)pcVar21 != 0)" (( "(") (binary_expression "*(int *)pcVar21 != 0" (pointer_expression "*(int *)pcVar21" (* "*") (cast_expression "(int *)pcVar21" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar21"))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)pcVar21 != -2)" (( "(") (binary_expression "*(int *)pcVar21 != -2" (pointer_expression "*(int *)pcVar21" (* "*") (cast_expression "(int *)pcVar21" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar21"))) (!= "!=") (number_literal "-2")) () ")"))) () ")")) (compound_statement "{\n                        iVar11 = *(int *)(pcStack_228 + -0x77f0);\nLAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);\n                      }" ({ "{") (expression_statement "iVar11 = *(int *)(pcStack_228 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_228 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcStack_228 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_228 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_228 + -0x77f0)" (( "(") (binary_expression "pcStack_228 + -0x77f0" (identifier "pcStack_228") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (labeled_statement "LAB_000ead48:\n                        (**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);" (statement_identifier "LAB_000ead48") (: ":") (expression_statement "(**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);" (call_expression "(**(code **)(pcStack_228 + -0x7810))\n                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524)" (parenthesized_expression "(**(code **)(pcStack_228 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_228 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_228 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_228 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_228 + -0x7810)" (( "(") (binary_expression "pcStack_228 + -0x7810" (identifier "pcStack_228") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524)" (( "(") (binary_expression "*(int *)(pcStack_228 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_228 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_228 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_228 + -0x7fc4)" (( "(") (binary_expression "pcStack_228 + -0x7fc4" (identifier "pcStack_228") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x71f") (, ",") (binary_expression "iVar11 + -0x3524" (identifier "iVar11") (+ "+") (number_literal "-0x3524")) () ")"))) (; ";"))) (} "}"))) (expression_statement "*(int *)pcVar21 = -2;" (assignment_expression "*(int *)pcVar21 = -2" (pointer_expression "*(int *)pcVar21" (* "*") (cast_expression "(int *)pcVar21" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar21"))) (= "=") (number_literal "-2")) (; ";")) (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" (identifier "uStack_220") (= "=") (binary_expression "uStack_220 & 0xffffff" (identifier "uStack_220") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar22,pcVar23)" (( "(") (identifier "pcVar22") (, ",") (identifier "pcVar23") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }" (else "else") (compound_statement "{\n                    uStack_220 = uStack_220 & 0xffffff;\n                    (*pcVar24)(pcVar22,pcVar23);\n                  }" ({ "{") (expression_statement "uStack_220 = uStack_220 & 0xffffff;" (assignment_expression "uStack_220 = uStack_220 & 0xffffff" (identifier "uStack_220") (= "=") (binary_expression "uStack_220 & 0xffffff" (identifier "uStack_220") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*pcVar24)(pcVar22,pcVar23);" (call_expression "(*pcVar24)(pcVar22,pcVar23)" (parenthesized_expression "(*pcVar24)" (( "(") (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) () ")")) (argument_list "(pcVar22,pcVar23)" (( "(") (identifier "pcVar22") (, ",") (identifier "pcVar23") () ")"))) (; ";")) (} "}")))) (expression_statement "pcVar20 = pcVar20 + 1;" (assignment_expression "pcVar20 = pcVar20 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + 1" (identifier "pcVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;" (assignment_expression "*(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" (* "*") (cast_expression "(int *)((int)pcVar22 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar22 + 0xc)" (( "(") (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar22")) (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "*(int *)((int)pcVar22 + 0xc) + 1" (pointer_expression "*(int *)((int)pcVar22 + 0xc)" (* "*") (cast_expression "(int *)((int)pcVar22 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar22 + 0xc)" (( "(") (binary_expression "(int)pcVar22 + 0xc" (cast_expression "(int)pcVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar22")) (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar15 = pcVar15 + 0x18;" (assignment_expression "pcVar15 = pcVar15 + 0x18" (identifier "pcVar15") (= "=") (binary_expression "pcVar15 + 0x18" (identifier "pcVar15") (+ "+") (number_literal "0x18"))) (; ";")) (if_statement "if (pcStack_1c4 == pcVar20) {\n                    return pcStack_1c4;\n                  }" (if "if") (parenthesized_expression "(pcStack_1c4 == pcVar20)" (( "(") (binary_expression "pcStack_1c4 == pcVar20" (identifier "pcStack_1c4") (== "==") (identifier "pcVar20")) () ")")) (compound_statement "{\n                    return pcStack_1c4;\n                  }" ({ "{") (return_statement "return pcStack_1c4;" (return "return") (identifier "pcStack_1c4") (; ";")) (} "}"))) (goto_statement "goto LAB_000eabc8;" (goto "goto") (statement_identifier "LAB_000eabc8") (; ";")) (} "}"))) (} "}")))) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (expression_statement "unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);" (assignment_expression "unaff_s2 = *(code **)(pcVar20 + 0x3d8b48)" (identifier "unaff_s2") (= "=") (pointer_expression "*(code **)(pcVar20 + 0x3d8b48)" (* "*") (cast_expression "(code **)(pcVar20 + 0x3d8b48)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x3d8b48)" (( "(") (binary_expression "pcVar20 + 0x3d8b48" (identifier "pcVar20") (+ "+") (number_literal "0x3d8b48")) () ")"))))) (; ";")) (expression_statement "pcVar3 = param_1;" (assignment_expression "pcVar3 = param_1" (identifier "pcVar3") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (param_1 != (code *)0x0) {\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }" (if "if") (parenthesized_expression "(param_1 != (code *)0x0)" (( "(") (binary_expression "param_1 != (code *)0x0" (identifier "param_1") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              unaff_s5 = (code *)0x0;\n              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);\n              unaff_s7 = &uStack_90;\n              do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);\n            }" ({ "{") (expression_statement "unaff_s5 = (code *)0x0;" (assignment_expression "unaff_s5 = (code *)0x0" (identifier "unaff_s5") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);" (assignment_expression "unaff_s8 = *(code **)(pcVar20 + 0x3d8b10)" (identifier "unaff_s8") (= "=") (pointer_expression "*(code **)(pcVar20 + 0x3d8b10)" (* "*") (cast_expression "(code **)(pcVar20 + 0x3d8b10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar20 + 0x3d8b10)" (( "(") (binary_expression "pcVar20 + 0x3d8b10" (identifier "pcVar20") (+ "+") (number_literal "0x3d8b10")) () ")"))))) (; ";")) (expression_statement "unaff_s7 = &uStack_90;" (assignment_expression "unaff_s7 = &uStack_90" (identifier "unaff_s7") (= "=") (pointer_expression "&uStack_90" (& "&") (identifier "uStack_90"))) (; ";")) (do_statement "do {\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              } while (param_1 != unaff_s5);" (do "do") (compound_statement "{\n                while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }\n                pcVar22 = pcStack_98;\n                pcVar3 = (code *)((uint)puStack_38[1] >> 8);\n                if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\nLAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;\n                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;\n                puStack_38 = puStack_38 + 3;\n                pcVar3 = param_1;\n              }" ({ "{") (while_statement "while (uVar17 != 0) {\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }" (while "while") (parenthesized_expression "(uVar17 != 0)" (( "(") (binary_expression "uVar17 != 0" (identifier "uVar17") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  pcStack_9c = (code *)*puStack_38;\n                  uStack_a0 = 0;\n                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);\n                  if (iVar2 != 0) break;\nLAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                  unaff_s5 = unaff_s5 + 1;\n                  puStack_38 = puStack_38 + 3;\n                  if (param_1 == unaff_s5) {\n                    return param_1;\n                  }\n                }" ({ "{") (expression_statement "pcStack_9c = (code *)*puStack_38;" (assignment_expression "pcStack_9c = (code *)*puStack_38" (identifier "pcStack_9c") (= "=") (cast_expression "(code *)*puStack_38" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puStack_38" (* "*") (identifier "puStack_38")))) (; ";")) (expression_statement "uStack_a0 = 0;" (assignment_expression "uStack_a0 = 0" (identifier "uStack_a0") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);" (assignment_expression "iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x76e0))" (( "(") (pointer_expression "**(code **)(pcStack_98 + -0x76e0)" (* "*") (pointer_expression "*(code **)(pcStack_98 + -0x76e0)" (* "*") (cast_expression "(code **)(pcStack_98 + -0x76e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_98 + -0x76e0)" (( "(") (binary_expression "pcStack_98 + -0x76e0" (identifier "pcStack_98") (+ "+") (number_literal "-0x76e0")) () ")"))))) () ")")) (argument_list "(param_4,piVar7,pcVar4 + 0x3e03cc)" (( "(") (identifier "param_4") (, ",") (identifier "piVar7") (, ",") (binary_expression "pcVar4 + 0x3e03cc" (identifier "pcVar4") (+ "+") (number_literal "0x3e03cc")) () ")")))) (; ";")) (if_statement "if (iVar2 != 0) break;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_000e91a4:\n                  uStack_90 = CONCAT13(8,uStack_90._1_3_);" (statement_identifier "LAB_000e91a4") (: ":") (expression_statement "uStack_90 = CONCAT13(8,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(8,uStack_90._1_3_)" (identifier "uStack_90") (= "=") (call_expression "CONCAT13(8,uStack_90._1_3_)" (identifier "CONCAT13") (argument_list "(8,uStack_90._1_3_)" (( "(") (number_literal "8") (, ",") (field_expression "uStack_90._1_3_" (identifier "uStack_90") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";"))) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" (( "(") (pointer_expression "*unaff_s2" (* "*") (identifier "unaff_s2")) () ")")) (argument_list "(iStack_20,unaff_s7)" (( "(") (identifier "iStack_20") (, ",") (identifier "unaff_s7") () ")"))) (; ";")) (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" (identifier "unaff_s5") (= "=") (binary_expression "unaff_s5 + 1" (identifier "unaff_s5") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puStack_38 = puStack_38 + 3;" (assignment_expression "puStack_38 = puStack_38 + 3" (identifier "puStack_38") (= "=") (binary_expression "puStack_38 + 3" (identifier "puStack_38") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if (param_1 == unaff_s5) {\n                    return param_1;\n                  }" (if "if") (parenthesized_expression "(param_1 == unaff_s5)" (( "(") (binary_expression "param_1 == unaff_s5" (identifier "param_1") (== "==") (identifier "unaff_s5")) () ")")) (compound_statement "{\n                    return param_1;\n                  }" ({ "{") (return_statement "return param_1;" (return "return") (identifier "param_1") (; ";")) (} "}"))) (} "}"))) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" (identifier "pcVar22") (= "=") (identifier "pcStack_98")) (; ";")) (expression_statement "pcVar3 = (code *)((uint)puStack_38[1] >> 8);" (assignment_expression "pcVar3 = (code *)((uint)puStack_38[1] >> 8)" (identifier "pcVar3") (= "=") (cast_expression "(code *)((uint)puStack_38[1] >> 8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)puStack_38[1] >> 8)" (( "(") (binary_expression "(uint)puStack_38[1] >> 8" (cast_expression "(uint)puStack_38[1]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "puStack_38[1]" (identifier "puStack_38") ([ "[") (number_literal "1") (] "]"))) (>> ">>") (number_literal "8")) () ")")))) (; ";")) (if_statement "if (pcVar3 < pcStack_28) {\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }\n                else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" (if "if") (parenthesized_expression "(pcVar3 < pcStack_28)" (( "(") (binary_expression "pcVar3 < pcStack_28" (identifier "pcVar3") (< "<") (identifier "pcStack_28")) () ")")) (compound_statement "{\n                  pcVar20 = (code *)((int)pcVar3 * 0x10);\n                  if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }\n                  pcVar15 = pcVar20 + iStack_24;\n                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);\n                  if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }\n                  pcVar22 = pcStack_98;\n                  if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }\n                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;\n                  uStack_90 = CONCAT13(1,uStack_90._1_3_);\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" ({ "{") (expression_statement "pcVar20 = (code *)((int)pcVar3 * 0x10);" (assignment_expression "pcVar20 = (code *)((int)pcVar3 * 0x10)" (identifier "pcVar20") (= "=") (cast_expression "(code *)((int)pcVar3 * 0x10)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pcVar3 * 0x10)" (( "(") (binary_expression "(int)pcVar3 * 0x10" (cast_expression "(int)pcVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar3")) (* "*") (number_literal "0x10")) () ")")))) (; ";")) (if_statement "if (iStack_24 == 0) {\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }" (if "if") (parenthesized_expression "(iStack_24 == 0)" (( "(") (binary_expression "iStack_24 == 0" (identifier "iStack_24") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    (**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);\nLAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);\nLAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);\nLAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);\n                    goto LAB_000e95f4;\n                  }" ({ "{") (expression_statement "(**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);" (call_expression "(**(code **)(pcStack_98 + -0x7810))\n                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_98 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_98 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_98 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_98 + -0x7810)" (( "(") (binary_expression "pcStack_98 + -0x7810" (identifier "pcStack_98") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,\n                               *(int *)(pcStack_98 + -0x77f0) + -0x5080)" (( "(") (binary_expression "*(int *)(pcStack_98 + -0x7fc4) + 0x39d4" (pointer_expression "*(int *)(pcStack_98 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_98 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_98 + -0x7fc4)" (( "(") (binary_expression "pcStack_98 + -0x7fc4" (identifier "pcStack_98") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x39d4")) (, ",") (number_literal "0x2e4") (, ",") (binary_expression "*(int *)(pcStack_98 + -0x77f0) + -0x5080" (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_98 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_98 + -0x77f0)" (( "(") (binary_expression "pcStack_98 + -0x77f0" (identifier "pcStack_98") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x5080")) () ")"))) (; ";")) (labeled_statement "LAB_000e95bc:\n                    iVar2 = *(int *)(pcVar22 + -0x77f0);" (statement_identifier "LAB_000e95bc") (: ":") (expression_statement "iVar2 = *(int *)(pcVar22 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcVar22 + -0x77f0)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar22 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar22 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + -0x77f0)" (( "(") (binary_expression "pcVar22 + -0x77f0" (identifier "pcVar22") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";"))) (labeled_statement "LAB_000e95c0:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);" (statement_identifier "LAB_000e95c0") (: ":") (expression_statement "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);" (call_expression "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar22 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar22 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar22 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + -0x7810)" (( "(") (binary_expression "pcVar22 + -0x7810" (identifier "pcVar22") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068)" (( "(") (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar22 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + -0x7fc4)" (( "(") (binary_expression "pcVar22 + -0x7fc4" (identifier "pcVar22") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x8e3") (, ",") (binary_expression "iVar2 + -0x5068" (identifier "iVar2") (+ "+") (number_literal "-0x5068")) () ")"))) (; ";"))) (labeled_statement "LAB_000e95d8:\n                    (**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);" (statement_identifier "LAB_000e95d8") (: ":") (expression_statement "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);" (call_expression "(**(code **)(pcVar22 + -0x7810))\n                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0)" (parenthesized_expression "(**(code **)(pcVar22 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcVar22 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcVar22 + -0x7810)" (* "*") (cast_expression "(code **)(pcVar22 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + -0x7810)" (( "(") (binary_expression "pcVar22 + -0x7810" (identifier "pcVar22") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,\n                               *(int *)(pcVar22 + -0x77f0) + -0x33a0)" (( "(") (binary_expression "*(int *)(pcVar22 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcVar22 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar22 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + -0x7fc4)" (( "(") (binary_expression "pcVar22 + -0x7fc4" (identifier "pcVar22") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) (, ",") (number_literal "0x5c8") (, ",") (binary_expression "*(int *)(pcVar22 + -0x77f0) + -0x33a0" (pointer_expression "*(int *)(pcVar22 + -0x77f0)" (* "*") (cast_expression "(int *)(pcVar22 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + -0x77f0)" (( "(") (binary_expression "pcVar22 + -0x77f0" (identifier "pcVar22") (+ "+") (number_literal "-0x77f0")) () ")")))) (+ "+") (number_literal "-0x33a0")) () ")"))) (; ";"))) (goto_statement "goto LAB_000e95f4;" (goto "goto") (statement_identifier "LAB_000e95f4") (; ";")) (} "}"))) (expression_statement "pcVar15 = pcVar20 + iStack_24;" (assignment_expression "pcVar15 = pcVar20 + iStack_24" (identifier "pcVar15") (= "=") (binary_expression "pcVar20 + iStack_24" (identifier "pcVar20") (+ "+") (identifier "iStack_24"))) (; ";")) (expression_statement "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);" (assignment_expression "uVar6 = (uint)*(ushort *)(pcVar15 + 0xe)" (identifier "uVar6") (= "=") (binary_expression "(uint)*(ushort *)(pcVar15 + 0xe)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(ushort *)(pcVar15 + 0xe)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe)" (( "(") (binary_expression "pcVar15 + 0xe" (identifier "pcVar15") (+ "+") (number_literal "0xe")) () ")"))))) (; ";")) (if_statement "if (uVar6 < 0xff00) {\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }\n                  else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }" (if "if") (parenthesized_expression "(uVar6 < 0xff00)" (( "(") (binary_expression "uVar6 < 0xff00" (identifier "uVar6") (< "<") (number_literal "0xff00")) () ")")) (compound_statement "{\nLAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    pcVar22 = pcStack_98;\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;\n                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;\n                    cVar1 = pcVar15[0xc];\n                  }" ({ "{") (labeled_statement "LAB_000e92ac:\n                    if (uVar6 == 0) goto LAB_000e910c;" (statement_identifier "LAB_000e92ac") (: ":") (if_statement "if (uVar6 == 0) goto LAB_000e910c;" (if "if") (parenthesized_expression "(uVar6 == 0)" (( "(") (binary_expression "uVar6 == 0" (identifier "uVar6") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e910c;" (goto "goto") (statement_identifier "LAB_000e910c") (; ";")))) (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_98 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_98 + -0x77f0)" (( "(") (binary_expression "pcStack_98 + -0x77f0" (identifier "pcStack_98") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" (identifier "pcVar22") (= "=") (identifier "pcStack_98")) (; ";")) (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;" (if "if") (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" (identifier "piVar7") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000e962c;" (goto "goto") (statement_identifier "LAB_000e962c") (; ";"))) (if_statement "if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;" (if "if") (parenthesized_expression "(*(int *)(piVar7[0xe] + uVar6 * 4) == 0)" (( "(") (binary_expression "*(int *)(piVar7[0xe] + uVar6 * 4) == 0" (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e91a4;" (goto "goto") (statement_identifier "LAB_000e91a4") (; ";"))) (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar15[0xc]" (identifier "pcVar15") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }" (else "else") (compound_statement "{\n                    if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }\nLAB_000e910c:\n                    cVar1 = pcVar15[0xc];\n                  }" ({ "{") (if_statement "if (uVar6 == 0xffff) {\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }" (if "if") (parenthesized_expression "(uVar6 == 0xffff)" (( "(") (binary_expression "uVar6 == 0xffff" (identifier "uVar6") (== "==") (number_literal "0xffff")) () ")")) (compound_statement "{\n                      iVar2 = piVar7[0xc];\n                      pcStack_88 = pcVar3;\n                      pcStack_84 = pcVar20;\n                      pcStack_80 = pcVar15;\n                      if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }\n                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);\n                      pcVar3 = pcStack_88;\n                      pcVar20 = pcStack_84;\n                      pcVar15 = pcStack_80;\n                      goto LAB_000e92ac;\n                    }" ({ "{") (expression_statement "iVar2 = piVar7[0xc];" (assignment_expression "iVar2 = piVar7[0xc]" (identifier "iVar2") (= "=") (subscript_expression "piVar7[0xc]" (identifier "piVar7") ([ "[") (number_literal "0xc") (] "]"))) (; ";")) (expression_statement "pcStack_88 = pcVar3;" (assignment_expression "pcStack_88 = pcVar3" (identifier "pcStack_88") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "pcStack_84 = pcVar20;" (assignment_expression "pcStack_84 = pcVar20" (identifier "pcStack_84") (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "pcStack_80 = pcVar15;" (assignment_expression "pcStack_80 = pcVar15" (identifier "pcStack_80") (= "=") (identifier "pcVar15")) (; ";")) (if_statement "if (iVar2 == 0) {\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);\n                        piVar7[0xc] = iVar2;\n                      }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar7 + 0x6c))(piVar7)" (parenthesized_expression "(**(code **)(*piVar7 + 0x6c))" (( "(") (pointer_expression "**(code **)(*piVar7 + 0x6c)" (* "*") (pointer_expression "*(code **)(*piVar7 + 0x6c)" (* "*") (cast_expression "(code **)(*piVar7 + 0x6c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x6c)" (( "(") (binary_expression "*piVar7 + 0x6c" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x6c")) () ")"))))) () ")")) (argument_list "(piVar7)" (( "(") (identifier "piVar7") () ")")))) (; ";")) (expression_statement "piVar7[0xc] = iVar2;" (assignment_expression "piVar7[0xc] = iVar2" (subscript_expression "piVar7[0xc]" (identifier "piVar7") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "iVar2")) (; ";")) (} "}"))) (expression_statement "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);" (assignment_expression "uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88)" (identifier "uVar6") (= "=") (call_expression "(**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7790))" (( "(") (pointer_expression "**(code **)(pcStack_98 + -0x7790)" (* "*") (pointer_expression "*(code **)(pcStack_98 + -0x7790)" (* "*") (cast_expression "(code **)(pcStack_98 + -0x7790)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_98 + -0x7790)" (( "(") (binary_expression "pcStack_98 + -0x7790" (identifier "pcStack_98") (+ "+") (number_literal "-0x7790")) () ")"))))) () ")")) (argument_list "(iVar2,piVar7,pcStack_88)" (( "(") (identifier "iVar2") (, ",") (identifier "piVar7") (, ",") (identifier "pcStack_88") () ")")))) (; ";")) (expression_statement "pcVar3 = pcStack_88;" (assignment_expression "pcVar3 = pcStack_88" (identifier "pcVar3") (= "=") (identifier "pcStack_88")) (; ";")) (expression_statement "pcVar20 = pcStack_84;" (assignment_expression "pcVar20 = pcStack_84" (identifier "pcVar20") (= "=") (identifier "pcStack_84")) (; ";")) (expression_statement "pcVar15 = pcStack_80;" (assignment_expression "pcVar15 = pcStack_80" (identifier "pcVar15") (= "=") (identifier "pcStack_80")) (; ";")) (goto_statement "goto LAB_000e92ac;" (goto "goto") (statement_identifier "LAB_000e92ac") (; ";")) (} "}"))) (labeled_statement "LAB_000e910c:\n                    cVar1 = pcVar15[0xc];" (statement_identifier "LAB_000e910c") (: ":") (expression_statement "cVar1 = pcVar15[0xc];" (assignment_expression "cVar1 = pcVar15[0xc]" (identifier "cVar1") (= "=") (subscript_expression "pcVar15[0xc]" (identifier "pcVar15") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (} "}")))) (expression_statement "pcVar22 = pcStack_98;" (assignment_expression "pcVar22 = pcStack_98" (identifier "pcVar22") (= "=") (identifier "pcStack_98")) (; ";")) (if_statement "if (((byte)cVar1 & 0xf) != 3) {\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }" (if "if") (parenthesized_expression "(((byte)cVar1 & 0xf) != 3)" (( "(") (binary_expression "((byte)cVar1 & 0xf) != 3" (parenthesized_expression "((byte)cVar1 & 0xf)" (( "(") (binary_expression "(byte)cVar1 & 0xf" (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1")) (& "&") (number_literal "0xf")) () ")")) (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n                    iVar2 = *(int *)(pcStack_98 + -0x77f0);\n                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }\n                    goto LAB_000e95c0;\n                  }" ({ "{") (expression_statement "iVar2 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar2 = *(int *)(pcStack_98 + -0x77f0)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_98 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_98 + -0x77f0)" (( "(") (binary_expression "pcStack_98 + -0x77f0" (identifier "pcStack_98") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (if_statement "if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }" (if "if") (parenthesized_expression "(pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4))" (( "(") (binary_expression "pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" (identifier "pcVar3") (< "<") (cast_expression "(code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0x3b] - piVar7[0x3a] >> 4)" (( "(") (binary_expression "piVar7[0x3b] - piVar7[0x3a] >> 4" (binary_expression "piVar7[0x3b] - piVar7[0x3a]" (subscript_expression "piVar7[0x3b]" (identifier "piVar7") ([ "[") (number_literal "0x3b") (] "]")) (- "-") (subscript_expression "piVar7[0x3a]" (identifier "piVar7") ([ "[") (number_literal "0x3a") (] "]"))) (>> ">>") (number_literal "4")) () ")")))) () ")")) (compound_statement "{\n                      pcVar20 = pcVar20 + piVar7[0x3a];\n                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }\n                      *(int *)pcVar20 = -2;\n                      uStack_90 = uStack_90 & 0xffffff;\n                      (*unaff_s2)(iStack_20,unaff_s7);\n                      goto LAB_000e90a8;\n                    }" ({ "{") (expression_statement "pcVar20 = pcVar20 + piVar7[0x3a];" (assignment_expression "pcVar20 = pcVar20 + piVar7[0x3a]" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + piVar7[0x3a]" (identifier "pcVar20") (+ "+") (subscript_expression "piVar7[0x3a]" (identifier "piVar7") ([ "[") (number_literal "0x3a") (] "]")))) (; ";")) (if_statement "if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }" (if "if") (parenthesized_expression "((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2))" (( "(") (binary_expression "(*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)" (parenthesized_expression "(*(int *)pcVar20 != 0)" (( "(") (binary_expression "*(int *)pcVar20 != 0" (pointer_expression "*(int *)pcVar20" (* "*") (cast_expression "(int *)pcVar20" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar20"))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)pcVar20 != -2)" (( "(") (binary_expression "*(int *)pcVar20 != -2" (pointer_expression "*(int *)pcVar20" (* "*") (cast_expression "(int *)pcVar20" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar20"))) (!= "!=") (number_literal "-2")) () ")"))) () ")")) (compound_statement "{\n                        iVar11 = *(int *)(pcStack_98 + -0x77f0);\nLAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);\n                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);\n                      }" ({ "{") (expression_statement "iVar11 = *(int *)(pcStack_98 + -0x77f0);" (assignment_expression "iVar11 = *(int *)(pcStack_98 + -0x77f0)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(pcStack_98 + -0x77f0)" (* "*") (cast_expression "(int *)(pcStack_98 + -0x77f0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_98 + -0x77f0)" (( "(") (binary_expression "pcStack_98 + -0x77f0" (identifier "pcStack_98") (+ "+") (number_literal "-0x77f0")) () ")"))))) (; ";")) (labeled_statement "LAB_000e9238:\n                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);" (statement_identifier "LAB_000e9238") (: ":") (expression_statement "pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);" (assignment_expression "pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" (identifier "pcVar20") (= "=") (cast_expression "(code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_98 + -0x7fc4) + 0x4570)" (( "(") (binary_expression "*(int *)(pcStack_98 + -0x7fc4) + 0x4570" (pointer_expression "*(int *)(pcStack_98 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_98 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_98 + -0x7fc4)" (( "(") (binary_expression "pcStack_98 + -0x7fc4" (identifier "pcStack_98") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x4570")) () ")")))) (; ";"))) (expression_statement "(**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);" (call_expression "(**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0)" (parenthesized_expression "(**(code **)(pcStack_98 + -0x7810))" (( "(") (pointer_expression "**(code **)(pcStack_98 + -0x7810)" (* "*") (pointer_expression "*(code **)(pcStack_98 + -0x7810)" (* "*") (cast_expression "(code **)(pcStack_98 + -0x7810)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_98 + -0x7810)" (( "(") (binary_expression "pcStack_98 + -0x7810" (identifier "pcStack_98") (+ "+") (number_literal "-0x7810")) () ")"))))) () ")")) (argument_list "(pcVar20,0x71f,iVar11 + -0x48c0)" (( "(") (identifier "pcVar20") (, ",") (number_literal "0x71f") (, ",") (binary_expression "iVar11 + -0x48c0" (identifier "iVar11") (+ "+") (number_literal "-0x48c0")) () ")"))) (; ";")) (} "}"))) (expression_statement "*(int *)pcVar20 = -2;" (assignment_expression "*(int *)pcVar20 = -2" (pointer_expression "*(int *)pcVar20" (* "*") (cast_expression "(int *)pcVar20" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar20"))) (= "=") (number_literal "-2")) (; ";")) (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" (identifier "uStack_90") (= "=") (binary_expression "uStack_90 & 0xffffff" (identifier "uStack_90") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" (( "(") (pointer_expression "*unaff_s2" (* "*") (identifier "unaff_s2")) () ")")) (argument_list "(iStack_20,unaff_s7)" (( "(") (identifier "iStack_20") (, ",") (identifier "unaff_s7") () ")"))) (; ";")) (goto_statement "goto LAB_000e90a8;" (goto "goto") (statement_identifier "LAB_000e90a8") (; ";")) (} "}"))) (goto_statement "goto LAB_000e95c0;" (goto "goto") (statement_identifier "LAB_000e95c0") (; ";")) (} "}"))) (if_statement "if (*(code **)(*piVar7 + 0x60) == unaff_s8) {\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }\n                  else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" (if "if") (parenthesized_expression "(*(code **)(*piVar7 + 0x60) == unaff_s8)" (( "(") (binary_expression "*(code **)(*piVar7 + 0x60) == unaff_s8" (pointer_expression "*(code **)(*piVar7 + 0x60)" (* "*") (cast_expression "(code **)(*piVar7 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x60)" (( "(") (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x60")) () ")")))) (== "==") (identifier "unaff_s8")) () ")")) (compound_statement "{\n                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;\n                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" ({ "{") (if_statement "if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;" (if "if") (parenthesized_expression "((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6)" (( "(") (binary_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6" (call_expression "(uint)(piVar7[0xf] - piVar7[0xe] >> 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(piVar7[0xf] - piVar7[0xe] >> 2)" (( "(") (binary_expression "piVar7[0xf] - piVar7[0xe] >> 2" (binary_expression "piVar7[0xf] - piVar7[0xe]" (subscript_expression "piVar7[0xf]" (identifier "piVar7") ([ "[") (number_literal "0xf") (] "]")) (- "-") (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]"))) (>> ">>") (number_literal "2")) () ")"))) (<= "<=") (identifier "uVar6")) () ")")) (goto_statement "goto LAB_000e95d8;" (goto "goto") (statement_identifier "LAB_000e95d8") (; ";"))) (expression_statement "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);" (assignment_expression "iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(piVar7[0xe] + uVar6 * 4)" (* "*") (cast_expression "(int *)(piVar7[0xe] + uVar6 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0xe] + uVar6 * 4)" (( "(") (binary_expression "piVar7[0xe] + uVar6 * 4" (subscript_expression "piVar7[0xe]" (identifier "piVar7") ([ "[") (number_literal "0xe") (] "]")) (+ "+") (binary_expression "uVar6 * 4" (identifier "uVar6") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" (else "else") (compound_statement "{\n                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);\n                    uVar6 = *(uint *)(iVar2 + 0x98);\n                  }" ({ "{") (expression_statement "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);" (assignment_expression "iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*piVar7 + 0x60))(piVar7,uVar6)" (parenthesized_expression "(**(code **)(*piVar7 + 0x60))" (( "(") (pointer_expression "**(code **)(*piVar7 + 0x60)" (* "*") (pointer_expression "*(code **)(*piVar7 + 0x60)" (* "*") (cast_expression "(code **)(*piVar7 + 0x60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*piVar7 + 0x60)" (( "(") (binary_expression "*piVar7 + 0x60" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (argument_list "(piVar7,uVar6)" (( "(") (identifier "piVar7") (, ",") (identifier "uVar6") () ")")))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar2 + 0x98);" (assignment_expression "uVar6 = *(uint *)(iVar2 + 0x98)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;" (assignment_expression "*(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000" (pointer_expression "*(uint *)(iVar2 + 0x98)" (* "*") (cast_expression "(uint *)(iVar2 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x98)" (( "(") (binary_expression "iVar2 + 0x98" (identifier "iVar2") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "uVar6 & 0x7fffffff | 0x80000000" (binary_expression "uVar6 & 0x7fffffff" (identifier "uVar6") (& "&") (number_literal "0x7fffffff")) (| "|") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_90 = CONCAT13(1,uStack_90._1_3_);" (assignment_expression "uStack_90 = CONCAT13(1,uStack_90._1_3_)" (identifier "uStack_90") (= "=") (call_expression "CONCAT13(1,uStack_90._1_3_)" (identifier "CONCAT13") (argument_list "(1,uStack_90._1_3_)" (( "(") (number_literal "1") (, ",") (field_expression "uStack_90._1_3_" (identifier "uStack_90") (. ".") (field_identifier "_1_3_")) () ")")))) (; ";")) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" (( "(") (pointer_expression "*unaff_s2" (* "*") (identifier "unaff_s2")) () ")")) (argument_list "(iStack_20,unaff_s7)" (( "(") (identifier "iStack_20") (, ",") (identifier "unaff_s7") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" (else "else") (compound_statement "{\n                  uStack_90 = uStack_90 & 0xffffff;\n                  (*unaff_s2)(iStack_20,unaff_s7);\n                }" ({ "{") (expression_statement "uStack_90 = uStack_90 & 0xffffff;" (assignment_expression "uStack_90 = uStack_90 & 0xffffff" (identifier "uStack_90") (= "=") (binary_expression "uStack_90 & 0xffffff" (identifier "uStack_90") (& "&") (number_literal "0xffffff"))) (; ";")) (expression_statement "(*unaff_s2)(iStack_20,unaff_s7);" (call_expression "(*unaff_s2)(iStack_20,unaff_s7)" (parenthesized_expression "(*unaff_s2)" (( "(") (pointer_expression "*unaff_s2" (* "*") (identifier "unaff_s2")) () ")")) (argument_list "(iStack_20,unaff_s7)" (( "(") (identifier "iStack_20") (, ",") (identifier "unaff_s7") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_000e90a8:\n                unaff_s5 = unaff_s5 + 1;" (statement_identifier "LAB_000e90a8") (: ":") (expression_statement "unaff_s5 = unaff_s5 + 1;" (assignment_expression "unaff_s5 = unaff_s5 + 1" (identifier "unaff_s5") (= "=") (binary_expression "unaff_s5 + 1" (identifier "unaff_s5") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;" (assignment_expression "*(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" (* "*") (cast_expression "(int *)(iStack_20 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iStack_20 + 0xc)" (( "(") (binary_expression "iStack_20 + 0xc" (identifier "iStack_20") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (binary_expression "*(int *)(iStack_20 + 0xc) + 1" (pointer_expression "*(int *)(iStack_20 + 0xc)" (* "*") (cast_expression "(int *)(iStack_20 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iStack_20 + 0xc)" (( "(") (binary_expression "iStack_20 + 0xc" (identifier "iStack_20") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puStack_38 = puStack_38 + 3;" (assignment_expression "puStack_38 = puStack_38 + 3" (identifier "puStack_38") (= "=") (binary_expression "puStack_38 + 3" (identifier "puStack_38") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "pcVar3 = param_1;" (assignment_expression "pcVar3 = param_1" (identifier "pcVar3") (= "=") (identifier "param_1")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(param_1 != unaff_s5)" (( "(") (binary_expression "param_1 != unaff_s5" (identifier "param_1") (!= "!=") (identifier "unaff_s5")) () ")")) (; ";")) (} "}"))) (} "}")))) (return_statement "return pcVar3;" (return "return") (identifier "pcVar3") (; ";")) (} "}"))) (if_statement "if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {\n          iVar2 = piVar5[5];\n        }\n        else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }" (if "if") (parenthesized_expression "(((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c)))" (( "(") (binary_expression "((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||\n           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))" (parenthesized_expression "((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0))" (( "(") (binary_expression "(*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||\n            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)" (parenthesized_expression "(*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0')" (( "(") (binary_expression "*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0'" (pointer_expression "*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9)" (* "*") (cast_expression "(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9)" (( "(") (binary_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9" (pointer_expression "*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" (* "*") (cast_expression "(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(**(int **)(pcVar4 + 0x3d8b40) + 8)" (( "(") (binary_expression "**(int **)(pcVar4 + 0x3d8b40) + 8" (pointer_expression "**(int **)(pcVar4 + 0x3d8b40)" (* "*") (pointer_expression "*(int **)(pcVar4 + 0x3d8b40)" (* "*") (cast_expression "(int **)(pcVar4 + 0x3d8b40)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar4 + 0x3d8b40)" (( "(") (binary_expression "pcVar4 + 0x3d8b40" (identifier "pcVar4") (+ "+") (number_literal "0x3d8b40")) () ")"))))) (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "0x52e9")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)" (( "(") (binary_expression "(*(uint *)(puVar8 + 0x28) & 0xe000) != 0" (parenthesized_expression "(*(uint *)(puVar8 + 0x28) & 0xe000)" (( "(") (binary_expression "*(uint *)(puVar8 + 0x28) & 0xe000" (pointer_expression "*(uint *)(puVar8 + 0x28)" (* "*") (cast_expression "(uint *)(puVar8 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x28)" (( "(") (binary_expression "puVar8 + 0x28" (identifier "puVar8") (+ "+") (number_literal "0x28")) () ")")))) (& "&") (number_literal "0xe000")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))" (( "(") (binary_expression "-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c)" (number_literal "-1") (< "<") (pointer_expression "*(int *)(*(int *)(puVar8 + 8) + 0x2c)" (* "*") (cast_expression "(int *)(*(int *)(puVar8 + 8) + 0x2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar8 + 8) + 0x2c)" (( "(") (binary_expression "*(int *)(puVar8 + 8) + 0x2c" (pointer_expression "*(int *)(puVar8 + 8)" (* "*") (cast_expression "(int *)(puVar8 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 8)" (( "(") (binary_expression "puVar8 + 8" (identifier "puVar8") (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "0x2c")) () ")"))))) () ")"))) () ")")) (compound_statement "{\n          iVar2 = piVar5[5];\n        }" ({ "{") (expression_statement "iVar2 = piVar5[5];" (assignment_expression "iVar2 = piVar5[5]" (identifier "iVar2") (= "=") (subscript_expression "piVar5[5]" (identifier "piVar5") ([ "[") (number_literal "5") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }" (else "else") (compound_statement "{\n          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }\n          iVar2 = piVar5[5];\n        }" ({ "{") (if_statement "if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {\n            return (code *)0x1;\n          }" (if "if") (parenthesized_expression "((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000)" (( "(") (binary_expression "(*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000" (parenthesized_expression "(*(uint *)(puVar8 + 0x28) & 0x70000000)" (( "(") (binary_expression "*(uint *)(puVar8 + 0x28) & 0x70000000" (pointer_expression "*(uint *)(puVar8 + 0x28)" (* "*") (cast_expression "(uint *)(puVar8 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x28)" (( "(") (binary_expression "puVar8 + 0x28" (identifier "puVar8") (+ "+") (number_literal "0x28")) () ")")))) (& "&") (number_literal "0x70000000")) () ")")) (!= "!=") (number_literal "0x20000000")) () ")")) (compound_statement "{\n            return (code *)0x1;\n          }" ({ "{") (return_statement "return (code *)0x1;" (return "return") (cast_expression "(code *)0x1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1")) (; ";")) (} "}"))) (expression_statement "iVar2 = piVar5[5];" (assignment_expression "iVar2 = piVar5[5]" (identifier "iVar2") (= "=") (subscript_expression "piVar5[5]" (identifier "piVar5") ([ "[") (number_literal "5") (] "]"))) (; ";")) (} "}")))) (if_statement "if (iVar2 == 0) {\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }\n        else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          piVar5 = (int *)(puVar8 + 0x1c);\n        }" ({ "{") (expression_statement "piVar5 = (int *)(puVar8 + 0x1c);" (assignment_expression "piVar5 = (int *)(puVar8 + 0x1c)" (identifier "piVar5") (= "=") (cast_expression "(int *)(puVar8 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x1c)" (( "(") (binary_expression "puVar8 + 0x1c" (identifier "puVar8") (+ "+") (number_literal "0x1c")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }" (else "else") (compound_statement "{\n          piVar5 = (int *)(puVar8 + 0x1c);\n          if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }\n        }" ({ "{") (expression_statement "piVar5 = (int *)(puVar8 + 0x1c);" (assignment_expression "piVar5 = (int *)(puVar8 + 0x1c)" (identifier "piVar5") (= "=") (cast_expression "(int *)(puVar8 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x1c)" (( "(") (binary_expression "puVar8 + 0x1c" (identifier "puVar8") (+ "+") (number_literal "0x1c")) () ")")))) (; ";")) (if_statement "if (*(int *)(iVar2 + 0x8c) != 0) {\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + 0x8c) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + 0x8c) != 0" (pointer_expression "*(int *)(iVar2 + 0x8c)" (* "*") (cast_expression "(int *)(iVar2 + 0x8c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x8c)" (( "(") (binary_expression "iVar2 + 0x8c" (identifier "iVar2") (+ "+") (number_literal "0x8c")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            iVar2 = *(int *)(puVar8 + 0x50);\nLAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }\n            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);\n            return pcVar4;\n          }" ({ "{") (expression_statement "iVar2 = *(int *)(puVar8 + 0x50);" (assignment_expression "iVar2 = *(int *)(puVar8 + 0x50)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar8 + 0x50)" (* "*") (cast_expression "(int *)(puVar8 + 0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x50)" (( "(") (binary_expression "puVar8 + 0x50" (identifier "puVar8") (+ "+") (number_literal "0x50")) () ")"))))) (; ";")) (labeled_statement "LAB_000e8f24:\n            if (iVar2 == -1) {\n              return (code *)0x1;\n            }" (statement_identifier "LAB_000e8f24") (: ":") (if_statement "if (iVar2 == -1) {\n              return (code *)0x1;\n            }" (if "if") (parenthesized_expression "(iVar2 == -1)" (( "(") (binary_expression "iVar2 == -1" (identifier "iVar2") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n              return (code *)0x1;\n            }" ({ "{") (return_statement "return (code *)0x1;" (return "return") (cast_expression "(code *)0x1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1")) (; ";")) (} "}")))) (expression_statement "pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);" (assignment_expression "pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" (identifier "pcVar4") (= "=") (cast_expression "(code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" (identifier "FUN_000d05e4") (argument_list "(puVar8,*(int *)(puVar8 + 0x14) != 0,0)" (( "(") (identifier "puVar8") (, ",") (binary_expression "*(int *)(puVar8 + 0x14) != 0" (pointer_expression "*(int *)(puVar8 + 0x14)" (* "*") (cast_expression "(int *)(puVar8 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar8 + 0x14)" (( "(") (binary_expression "puVar8 + 0x14" (identifier "puVar8") (+ "+") (number_literal "0x14")) () ")")))) (!= "!=") (number_literal "0")) (, ",") (number_literal "0") () ")"))))) (; ";")) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (} "}")))) (do_statement "do {\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        } while (piVar5 != (int *)0x0);" (do "do") (compound_statement "{\n          if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }\n          piVar5 = (int *)piVar5[2];\n        }" ({ "{") (if_statement "if (*piVar5 == 0) {\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }" (if "if") (parenthesized_expression "(*piVar5 == 0)" (( "(") (binary_expression "*piVar5 == 0" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            iVar2 = piVar5[1];\n            goto LAB_000e8f24;\n          }" ({ "{") (expression_statement "iVar2 = piVar5[1];" (assignment_expression "iVar2 = piVar5[1]" (identifier "iVar2") (= "=") (subscript_expression "piVar5[1]" (identifier "piVar5") ([ "[") (number_literal "1") (] "]"))) (; ";")) (goto_statement "goto LAB_000e8f24;" (goto "goto") (statement_identifier "LAB_000e8f24") (; ";")) (} "}"))) (expression_statement "piVar5 = (int *)piVar5[2];" (assignment_expression "piVar5 = (int *)piVar5[2]" (identifier "piVar5") (= "=") (cast_expression "(int *)piVar5[2]" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "piVar5[2]" (identifier "piVar5") ([ "[") (number_literal "2") (] "]")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar5 != (int *)0x0)" (( "(") (binary_expression "piVar5 != (int *)0x0" (identifier "piVar5") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (} "}"))) (return_statement "return (code *)0x1;" (return "return") (cast_expression "(code *)0x1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1")) (; ";")) (} "}"))) (if_statement "if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {\n      iVar2 = param_4[5];\n    }\n    else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }" (if "if") (parenthesized_expression "(((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c)))" (( "(") (binary_expression "((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||\n       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))" (parenthesized_expression "((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0))" (( "(") (binary_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||\n        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)" (parenthesized_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0')" (( "(") (binary_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0'" (pointer_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" (* "*") (cast_expression "(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9)" (( "(") (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" (* "*") (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" (( "(") (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" (* "*") (cast_expression "(int *)PTR_parameters_004c19b4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_004c19b4"))) (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "0x52e9")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "((*(uint *)(param_1 + 0x28) & 0xe000) != 0)" (( "(") (binary_expression "(*(uint *)(param_1 + 0x28) & 0xe000) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0x28) & 0xe000)" (( "(") (binary_expression "*(uint *)(param_1 + 0x28) & 0xe000" (pointer_expression "*(uint *)(param_1 + 0x28)" (* "*") (cast_expression "(uint *)(param_1 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")")))) (& "&") (number_literal "0xe000")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))" (( "(") (binary_expression "-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c)" (number_literal "-1") (< "<") (pointer_expression "*(int *)(*(int *)(param_1 + 8) + 0x2c)" (* "*") (cast_expression "(int *)(*(int *)(param_1 + 8) + 0x2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 8) + 0x2c)" (( "(") (binary_expression "*(int *)(param_1 + 8) + 0x2c" (pointer_expression "*(int *)(param_1 + 8)" (* "*") (cast_expression "(int *)(param_1 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "0x2c")) () ")"))))) () ")"))) () ")")) (compound_statement "{\n      iVar2 = param_4[5];\n    }" ({ "{") (expression_statement "iVar2 = param_4[5];" (assignment_expression "iVar2 = param_4[5]" (identifier "iVar2") (= "=") (subscript_expression "param_4[5]" (identifier "param_4") ([ "[") (number_literal "5") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }" (else "else") (compound_statement "{\n      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }\n      iVar2 = param_4[5];\n    }" ({ "{") (if_statement "if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {\n        return (code *)0x1;\n      }" (if "if") (parenthesized_expression "((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000)" (( "(") (binary_expression "(*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000" (parenthesized_expression "(*(uint *)(param_1 + 0x28) & 0x70000000)" (( "(") (binary_expression "*(uint *)(param_1 + 0x28) & 0x70000000" (pointer_expression "*(uint *)(param_1 + 0x28)" (* "*") (cast_expression "(uint *)(param_1 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")")))) (& "&") (number_literal "0x70000000")) () ")")) (!= "!=") (number_literal "0x20000000")) () ")")) (compound_statement "{\n        return (code *)0x1;\n      }" ({ "{") (return_statement "return (code *)0x1;" (return "return") (cast_expression "(code *)0x1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1")) (; ";")) (} "}"))) (expression_statement "iVar2 = param_4[5];" (assignment_expression "iVar2 = param_4[5]" (identifier "iVar2") (= "=") (subscript_expression "param_4[5]" (identifier "param_4") ([ "[") (number_literal "5") (] "]"))) (; ";")) (} "}")))) (if_statement "if (iVar2 == 0) {\n      pcVar3 = param_1 + 0x1c;\n    }\n    else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      pcVar3 = param_1 + 0x1c;\n    }" ({ "{") (expression_statement "pcVar3 = param_1 + 0x1c;" (assignment_expression "pcVar3 = param_1 + 0x1c" (identifier "pcVar3") (= "=") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c"))) (; ";")) (} "}")) (else_clause "else {\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }" (else "else") (compound_statement "{\n      pcVar3 = param_1 + 0x1c;\n      if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }\n    }" ({ "{") (expression_statement "pcVar3 = param_1 + 0x1c;" (assignment_expression "pcVar3 = param_1 + 0x1c" (identifier "pcVar3") (= "=") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c"))) (; ";")) (if_statement "if (*(int *)(iVar2 + 0x8c) != 0) {\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + 0x8c) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + 0x8c) != 0" (pointer_expression "*(int *)(iVar2 + 0x8c)" (* "*") (cast_expression "(int *)(iVar2 + 0x8c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x8c)" (( "(") (binary_expression "iVar2 + 0x8c" (identifier "iVar2") (+ "+") (number_literal "0x8c")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iVar2 = *(int *)(param_1 + 0x50);\nLAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }\n        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);\n        return pcVar4;\n      }" ({ "{") (expression_statement "iVar2 = *(int *)(param_1 + 0x50);" (assignment_expression "iVar2 = *(int *)(param_1 + 0x50)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(param_1 + 0x50)" (* "*") (cast_expression "(int *)(param_1 + 0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")"))))) (; ";")) (labeled_statement "LAB_000e8d84:\n        if (iVar2 == -1) {\n          return (code *)0x1;\n        }" (statement_identifier "LAB_000e8d84") (: ":") (if_statement "if (iVar2 == -1) {\n          return (code *)0x1;\n        }" (if "if") (parenthesized_expression "(iVar2 == -1)" (( "(") (binary_expression "iVar2 == -1" (identifier "iVar2") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n          return (code *)0x1;\n        }" ({ "{") (return_statement "return (code *)0x1;" (return "return") (cast_expression "(code *)0x1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1")) (; ";")) (} "}")))) (expression_statement "pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);" (assignment_expression "pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0)" (identifier "pcVar4") (= "=") (cast_expression "(code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0)" (identifier "FUN_000d05e4") (argument_list "(param_1,*(int *)(param_1 + 0x14) != 0,0)" (( "(") (identifier "param_1") (, ",") (binary_expression "*(int *)(param_1 + 0x14) != 0" (pointer_expression "*(int *)(param_1 + 0x14)" (* "*") (cast_expression "(int *)(param_1 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x14)" (( "(") (binary_expression "param_1 + 0x14" (identifier "param_1") (+ "+") (number_literal "0x14")) () ")")))) (!= "!=") (number_literal "0")) (, ",") (number_literal "0") () ")"))))) (; ";")) (return_statement "return pcVar4;" (return "return") (identifier "pcVar4") (; ";")) (} "}"))) (} "}")))) (do_statement "do {\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    } while (pcVar3 != (code *)0x0);" (do "do") (compound_statement "{\n      if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }\n      pcVar3 = *(code **)(pcVar3 + 8);\n    }" ({ "{") (if_statement "if (*(int *)pcVar3 == 0) {\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }" (if "if") (parenthesized_expression "(*(int *)pcVar3 == 0)" (( "(") (binary_expression "*(int *)pcVar3 == 0" (pointer_expression "*(int *)pcVar3" (* "*") (cast_expression "(int *)pcVar3" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar3"))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar2 = *(int *)(pcVar3 + 4);\n        goto LAB_000e8d84;\n      }" ({ "{") (expression_statement "iVar2 = *(int *)(pcVar3 + 4);" (assignment_expression "iVar2 = *(int *)(pcVar3 + 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar3 + 4)" (* "*") (cast_expression "(int *)(pcVar3 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 4)" (( "(") (binary_expression "pcVar3 + 4" (identifier "pcVar3") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (goto_statement "goto LAB_000e8d84;" (goto "goto") (statement_identifier "LAB_000e8d84") (; ";")) (} "}"))) (expression_statement "pcVar3 = *(code **)(pcVar3 + 8);" (assignment_expression "pcVar3 = *(code **)(pcVar3 + 8)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(pcVar3 + 8)" (* "*") (cast_expression "(code **)(pcVar3 + 8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar3 + 8)" (( "(") (binary_expression "pcVar3 + 8" (identifier "pcVar3") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcVar3 != (code *)0x0)" (( "(") (binary_expression "pcVar3 != (code *)0x0" (identifier "pcVar3") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (} "}"))) (expression_statement "PTR_do_gold_unreachable_004c1a30 = pcVar4;" (assignment_expression "PTR_do_gold_unreachable_004c1a30 = pcVar4" (identifier "PTR_do_gold_unreachable_004c1a30") (= "=") (identifier "pcVar4")) (; ";")) (return_statement "return (code *)0x1;" (return "return") (cast_expression "(code *)0x1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1")) (; ";")) (} "}")))

/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */
/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */
/* DWARF original prototype: bool should_apply_static_reloc(Relocate * this, Mips_symbol<32> * gsym,
   uint r_type, Output_section * output_section, Target_mips<32,_false> * target) */

bool __thiscall
anon_unknown.dwarf_29466b::var_5<32,var_73>::type_4::should_apply_static_reloc
          (type_4 *var_2,Mips_symbol<32> *gsym,type_2 var_1,type_8 *output_section,
          var_5<32,var_73> *target)

{
  type_12 var_20;
  int var_4;
  type_1 var_96;
  bool bVar10;
  bool *var_97;
  type_2 var_13;
  type_3 *var_95;
  type_2 var_18;
  type_4 *var_54;
  int *var_88;
  type_5 uVar11;
  type_4 *var_14;
  type_4 *var_42;
  type_4 *var_33;
  int *extraout_v1;
  int *var_86;
  type_6 *var_9;
  int *var_87;
  type_7 *var_8;
  type_4 *var_34;
  type_2 var_44;
  int var_66;
  type_8 *pOVar21;
  type_8 *pOVar22;
  type_8 *pOVar23;
  type_4 *var_32;
  type_4 *var_62;
  type_4 *var_53;
  type_4 *var_26;
  type_4 *var_40;
  type_4 *var_90;
  type_9 *var_84;
  type_2 *var_52;
  type_5 *var_17;
  type_2 *unaff_s7;
  type_2 *puVar30;
  type_10 *var_11;
  type_9 *var_37;
  type_9 *var_36;
  type_10 *var_27;
  type_10 *var_10;
  type_9 *var_89;
  type_9 *var_82;
  type_10 *var_31;
  type_10 *pcVar38;
  type_5 auStack_350 [8];
  type_9 *var_85;
  type_4 *var_83;
  type_2 uStack_340;
  type_4 *pRStack_33c;
  int iStack_338;
  type_4 *pRStack_330;
  type_10 *pcStack_32c;
  type_4 *pRStack_328;
  type_4 *pRStack_324;
  type_8 *pOStack_320;
  type_4 *pRStack_31c;
  type_2 *puStack_318;
  type_2 uStack_314;
  type_9 *p_Stack_310;
  type_10 *pcStack_30c;
  int iStack_2f8;
  type_4 *var_79;
  type_10 *var_76;
  type_9 *var_80;
  type_2 var_78;
  char var_81;
  type_4 *var_77;
  type_4 *pRStack_2dc;
  type_4 *pRStack_2d8;
  int iStack_2d4;
  type_10 *pcStack_2d0;
  type_4 *pRStack_2cc;
  type_4 *pRStack_2c8;
  type_4 *pRStack_2c4;
  type_8 *pOStack_2c0;
  type_4 *pRStack_2bc;
  type_2 *puStack_2b8;
  type_2 uStack_2b4;
  type_9 *p_Stack_2b0;
  type_10 *pcStack_2ac;
  type_11 uStack_298;
  int var_74;
  type_10 *var_69;
  type_4 *var_75;
  type_2 var_71;
  type_12 bStack_281;
  type_4 *var_72;
  type_4 *var_70;
  type_4 *pRStack_278;
  type_4 *pRStack_274;
  int iStack_270;
  type_2 uStack_268;
  type_10 *pcStack_264;
  type_4 *pRStack_260;
  type_4 *pRStack_25c;
  type_8 *pOStack_258;
  type_4 *pRStack_254;
  type_2 *puStack_250;
  type_2 uStack_24c;
  type_9 *p_Stack_248;
  type_10 *pcStack_244;
  type_11 uStack_230;
  type_4 *var_67;
  type_10 *var_63;
  type_4 *var_68;
  type_2 var_65;
  type_12 bStack_219;
  type_4 *var_64;
  type_4 *pRStack_214;
  type_4 *pRStack_210;
  type_4 *pRStack_20c;
  type_4 *pRStack_208;
  type_10 *pcStack_204;
  type_4 *pRStack_200;
  type_4 *pRStack_1fc;
  type_8 *pOStack_1f8;
  type_4 *pRStack_1f4;
  type_2 *puStack_1f0;
  type_2 *puStack_1ec;
  type_9 *p_Stack_1e8;
  type_10 *pcStack_1e4;
  type_11 uStack_1d0;
  int var_60;
  type_10 *var_55;
  type_4 *var_61;
  type_2 var_57;
  type_12 bStack_1b9;
  type_4 *var_58;
  type_4 *var_56;
  type_4 *pRStack_1b0;
  type_4 *pRStack_1ac;
  type_4 *pRStack_1a8;
  type_2 uStack_1a0;
  type_10 *pcStack_19c;
  type_4 *pRStack_198;
  type_4 *pRStack_194;
  type_8 *pOStack_190;
  type_4 *pRStack_18c;
  type_2 uStack_188;
  type_2 *puStack_184;
  type_9 *p_Stack_180;
  type_10 *pcStack_17c;
  type_11 uStack_168;
  type_4 *var_50;
  type_10 *var_47;
  type_4 *var_51;
  type_2 var_49;
  type_12 bStack_151;
  type_4 *var_48;
  type_4 *pRStack_14c;
  type_4 *pRStack_148;
  type_4 *pRStack_144;
  type_5 *puStack_140;
  type_10 *pcStack_13c;
  type_4 *pRStack_138;
  type_4 *pRStack_134;
  type_8 *pOStack_130;
  type_4 *pRStack_12c;
  type_2 uStack_128;
  type_2 *puStack_124;
  type_9 *p_Stack_120;
  type_10 *pcStack_11c;
  type_11 uStack_108;
  int var_45;
  type_10 *var_35;
  type_4 *var_46;
  type_2 var_39;
  type_12 bStack_f1;
  type_4 *var_43;
  type_4 *var_38;
  type_4 *pRStack_e8;
  type_4 *pRStack_e4;
  type_4 *pRStack_e0;
  type_11 *puStack_d4;
  type_4 *pRStack_d0;
  type_8 *pOStack_c8;
  type_4 *pRStack_c4;
  type_2 uStack_c0;
  type_2 *puStack_bc;
  type_9 *p_Stack_b8;
  type_10 *pcStack_b4;
  type_11 uStack_a0;
  type_4 *var_29;
  type_10 *var_19;
  type_4 *var_30;
  type_2 var_23;
  type_12 bStack_89;
  type_4 *var_21;
  type_4 *pRStack_84;
  type_5 *puStack_80;
  type_4 *pRStack_7c;
  type_6 *pSStack_78;
  type_8 *pOStack_74;
  int var_12;
  type_11 *var_25;
  type_4 *var_15;
  int var_16;
  int var_24;
  
  if (((*(type_2 *)(var_1 + 0x5c) & 2) == 0) || (var_2 == (type_4 *)0x0)) {
    return true;
  }
  pOVar21 = output_section;
  if (&gsym[-1].field_0x6f < (type_5 *)0xf9) {
    var_4 = (*(type_10 *)PTR_needs_dynamic_reloc_004c1b58)
                      (var_2,(int)(char)(&gsym[-1].field_0x6f)[(int)(var_3 + -0x56e8)]);
    var_10 = (type_10 *)PTR_do_gold_unreachable_004c1a30;
  }
  else {
    var_4 = (*(type_10 *)PTR_needs_dynamic_reloc_004c1b58)(var_2,0);
    var_10 = (type_10 *)PTR_do_gold_unreachable_004c1a30;
  }
  if (var_4 != 0) {
    PTR_do_gold_unreachable_004c1a30 = var_10;
    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {
      var_4 = 0x5c;
      var_8 = var_3 + -0x33c8;
      var_31 = var_5<32,var_6>::type_4::should_apply_static_reloc;
      var_9 = (type_6 *)(var_7 + -0x9b8);
      (*var_10)();
      if (((*(type_2 *)(var_8 + 0x5c) & 2) == 0) || (var_9 == (type_6 *)0x0)) {
        return true;
      }
      pOVar22 = pOVar21;
      if (var_4 - 1U < 0xf9) {
        var_4 = (**(type_10 **)(var_10 + 0x3d8ce4))();
      }
      else {
        var_4 = (**(type_10 **)(var_10 + 0x3d8ce4))();
      }
      if (var_4 != 0) {
        if (*(int *)(**(int **)(var_10 + 0x3d8b40) + 8) == 0) {
          var_11 = *(type_10 **)(var_10 + 0x3d8bbc);
          (*var_11)(*(int *)(var_10 + 0x3d8408) + -0x9b8,0x5c,
                     *(int *)(var_10 + 0x3d8bdc) + -0x33c8);
          var_27 = var_11 + 0x3e022c;
          var_13 = (type_2)var_31 & 0xff;
          pOVar23 = pOVar22;
          var_19 = var_27;
          pSStack_78 = var_9;
          pOStack_74 = pOVar21;
          if (var_12 == 9) {
            var_21 = *(type_4 **)(var_11 + 0x3d8b10);
            var_14 = var_21;
            if (var_2 != (type_4 *)0x0) {
              var_26 = (type_4 *)0x0;
              var_90 = *(type_4 **)(var_11 + 0x3d8b48);
              var_89 = (type_9 *)&var_23;
              unaff_s7 = (type_2 *)0xff00;
              do {
                if (var_13 == 0) {
LAB_000e9358:
                  var_14 = (type_4 *)((type_2)var_25[1] >> 8);
                  if (var_14 < var_15) {
                    var_17 = (type_5 *)((int)var_14 * 0x10);
                    var_27 = var_19;
                    if (var_16 == 0) goto LAB_000e9610;
                    var_62 = (type_4 *)(var_17 + var_16);
                    var_18 = (type_2)*(type_13 *)&var_62[1].field_0x6;
                    if (var_18 < 0xff00) {
LAB_000e948c:
                      if (var_18 == 0) goto LAB_000e9394;
                      var_4 = *(int *)(var_19 + -0x77f0);
                      var_27 = var_19;
                      if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= var_18) goto LAB_000e962c;
                      if (*(int *)(*(int *)&pOVar22->load_address_ + var_18 * 4) == 0)
                      goto LAB_000e9434;
                      var_20 = var_62[1].calculate_only_;
                    }
                    else {
                      if (var_18 == 0xffff) {
                        var_4 = *(int *)&pOVar22->entsize_;
                        pRStack_84 = var_14;
                        pRStack_7c = var_62;
                        puStack_80 = var_17;
                        if (var_4 == 0) {
                          var_4 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);
                          *(int *)&pOVar22->entsize_ = var_4;
                        }
                        var_18 = (**(type_10 **)(var_19 + -0x7790))(var_4,pOVar22,pRStack_84);
                        var_14 = pRStack_84;
                        var_62 = pRStack_7c;
                        var_17 = puStack_80;
                        goto LAB_000e948c;
                      }
LAB_000e9394:
                      var_20 = var_62[1].calculate_only_;
                    }
                    var_27 = var_19;
                    if ((var_20 & 0xf) == 3) {
                      var_14 = (type_4 *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];
                      if (var_14 == var_21) {
                        if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >>
                                  2) <= var_18) goto LAB_000e95d8;
                        var_4 = *(int *)(*(int *)&pOVar22->load_address_ + var_18 * 4);
                        var_18 = *(type_2 *)(var_4 + 0x98);
                      }
                      else {
                        var_4 = (*(type_10 *)var_14)(pOVar22,var_18);
                        var_18 = *(type_2 *)(var_4 + 0x98);
                      }
                      *(type_2 *)(var_4 + 0x98) = var_18 & 0x7fffffff | 0x80000000;
                      var_23 = var_22(2,var_23._1_3_);
                      (*(type_10 *)var_90)(var_24,var_89);
                    }
                    else {
                      var_88 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +
                                      (int)var_17);
                      if ((type_4 *)
                          (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=
                          var_14) goto LAB_000e95bc;
                      var_4 = *var_88;
                      if ((var_4 != 0) && (var_66 = *(int *)(var_19 + -0x77f0), var_4 != -2))
                      goto LAB_000e9238;
                      *var_88 = -2;
                      var_23 = var_23 & 0xffffff;
                      (*(type_10 *)var_90)(var_24,var_89);
                    }
                  }
                  else {
                    var_23 = var_23 & 0xffffff;
                    (*(type_10 *)var_90)(var_24,var_89);
                  }
                  *(int *)(var_24 + 0xc) = *(int *)(var_24 + 0xc) + 1;
                }
                else {
                  var_29 = (type_4 *)*var_25;
                  uStack_a0 = 0;
                  var_4 = (**(type_10 **)(var_19 + -0x76e0))
                                    (output_section,pOVar22,var_10 + 0x3e03cc);
                  if (var_4 != 0) goto LAB_000e9358;
LAB_000e9434:
                  var_23 = var_22(8,var_23._1_3_);
                  (*(type_10 *)var_90)(var_24,var_89);
                }
                var_26 = (type_4 *)((int)&var_26->calculated_value_ + 1);
                var_25 = var_25 + 2;
                var_14 = var_2;
              } while (var_2 != var_26);
            }
          }
          else {
            if (var_12 != 4) {
LAB_000e95f4:
              (**(type_10 **)(var_27 + -0x7810))
                        (*(int *)(var_27 + -0x7fc4) + 0x3588,0x27da,
                         *(int *)(var_27 + -0x77f0) + -0x502c);
LAB_000e9610:
              var_4 = *(int *)(var_27 + -0x77f0) + -0x5044;
              (**(type_10 **)(var_27 + -0x7810))(*(int *)(var_27 + -0x7fc4) + 0x39d4,0x2e4,var_4);
LAB_000e962c:
              var_11 = *(type_10 **)(var_27 + -0x7810);
              pcVar38 = var_5<32,var_6>::var_28;
              (*var_11)(*(int *)(var_27 + -0x7fc4) + 0x4570,0x50b,var_4 + -0x34dc);
              var_17 = puStack_80;
              var_33 = pRStack_84;
              var_14 = var_29;
              var_10 = var_11 + 0x3dfbfc;
              var_18 = (type_2)bStack_89;
              pOVar21 = pOVar23;
              var_31 = var_19;
              var_35 = var_10;
              puStack_d4 = var_25;
              pRStack_d0 = var_26;
              pOStack_c8 = pOVar22;
              pRStack_c4 = var_90;
              uStack_c0 = var_13;
              puStack_bc = unaff_s7;
              p_Stack_b8 = var_89;
              pcStack_b4 = pcVar38;
              if (var_29 == (type_4 *)0x9) {
                var_42 = *(type_4 **)(var_11 + 0x3d8408);
                if (var_30 != (type_4 *)0x0) {
                  var_40 = (type_4 *)0x0;
                  var_37 = *(type_9 **)(var_11 + 0x3d84e0);
                  var_43 = (type_4 *)
                               &(*(type_4 **)(var_11 + 0x3d8408))[0x30c].calculate_only_;
                  puVar30 = (type_2 *)(*(int *)(var_11 + 0x3d7c38) + 0x5448);
                  do {
                    if (var_18 == 0) {
LAB_000e99a8:
                      var_42 = *(type_4 **)(var_31 + 4);
                      var_32 = (type_4 *)((type_2)var_42 >> 8);
                      if (var_32 < var_21) {
                        var_62 = (type_4 *)((int)var_32 * 0x10);
                        var_10 = var_35;
                        if (var_33 == (type_4 *)0x0) goto LAB_000e9d24;
                        var_53 = var_33 + (int)var_32 * 2;
                        var_34 = (type_4 *)(type_2)*(type_13 *)&var_53[1].field_0x6;
                        if (var_34 < (type_4 *)0xff00) {
LAB_000e9ad8:
                          if (var_34 == (type_4 *)0x0) goto LAB_000e99e8;
                          var_10 = var_35;
                          if ((type_4 *)
                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                              <= var_34) goto LAB_000e9d08;
                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)var_34 * 4) == 0)
                          goto LAB_000e9a0c;
                          var_20 = var_53[1].calculate_only_;
                        }
                        else {
                          if (var_34 == (type_4 *)0xffff) {
                            var_4 = *(int *)&pOVar23->entsize_;
                            var_38 = var_42;
                            pRStack_e8 = var_32;
                            pRStack_e4 = var_62;
                            pRStack_e0 = var_53;
                            if (var_4 == 0) {
                              var_4 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])
                                                (pOVar23,&var_39);
                              *(int *)&pOVar23->entsize_ = var_4;
                            }
                            var_13 = (type_2)var_38;
                            var_38 = pRStack_e8;
                            var_42 = pRStack_e8;
                            pRStack_e8 = (type_4 *)var_13;
                            var_34 = (type_4 *)
                                      (**(type_10 **)(var_35 + -0x7790))(var_4,pOVar23,var_42);
                            var_42 = pRStack_e8;
                            var_32 = var_38;
                            var_62 = pRStack_e4;
                            var_53 = pRStack_e0;
                            goto LAB_000e9ad8;
                          }
LAB_000e99e8:
                          var_20 = var_53[1].calculate_only_;
                        }
                        var_13 = (type_2)var_42 & 0xff;
                        var_10 = var_35;
                        if ((var_20 & 0xf) != 3) {
                          if (var_32 == (type_4 *)0x0 && var_13 == 0) goto LAB_000e9a0c;
                          var_62 = (type_4 *)
                                  ((int)&var_62->calculated_value_ +
                                  (int)&pOVar23->free_space_fill_->_vptr_Output_fill);
                          if (var_32 < (type_4 *)
                                        (*(int *)&pOVar23->field_0xec -
                                         (int)pOVar23->free_space_fill_ >> 4)) {
                            if (var_62->calculated_value_ != 0) {
                              var_13 = *(type_2 *)(var_35 + -0x77f0);
                              var_42 = (type_4 *)0x9;
                              if (var_62->calculated_value_ != 0xfffffffe) goto LAB_000e981c;
                            }
                            var_62->calculated_value_ = 0xfffffffe;
                            goto LAB_000e9970;
                          }
                          goto LAB_000e9cb4;
                        }
                        if (var_13 != 4) {
                          var_38 = var_34;
                          var_13 = (*(type_10 *)var_43)(var_13,pOVar23);
                          var_10 = var_35;
                          if (var_13 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            uVar11 = (*(var_35 + puVar30[var_13]))();
                            return (bool)uVar11;
                          }
                          goto switchD_000e9b48_caseD_3;
                        }
                        var_36 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];
                        if (var_36 == var_37) {
                          if ((type_4 *)
                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                              <= var_34) goto LAB_000e9cec;
                          var_4 = *(int *)(*(int *)&pOVar23->load_address_ + (int)var_34 * 4);
                          var_38 = var_14;
                        }
                        else {
                          var_38 = var_14;
                          var_4 = (*var_36)(pOVar23,var_34);
                        }
                        var_10 = *(type_10 **)(var_35 + -0x76e4);
                        *(type_2 *)(var_4 + 0x98) = *(type_2 *)(var_4 + 0x98) & 0x7fffffff | 0x80000000;
                        var_39 = var_22((char)var_38,var_39._1_3_);
                        (*var_10)(var_17,&var_39);
                        if (var_38 == (type_4 *)&DAT_00000008) goto LAB_000e9990;
                        var_4 = *(int *)(var_17 + 0xc);
                      }
                      else {
LAB_000e9970:
                        var_39 = var_39 & 0xffffff;
                        (**(type_10 **)(var_35 + -0x76e4))(var_17,&var_39);
                        var_4 = *(int *)(var_17 + 0xc);
                      }
                      *(int *)(var_17 + 0xc) = var_4 + 1;
                    }
                    else {
                      var_45 = *(int *)var_31;
                      uStack_108 = 0;
                      var_4 = (**(type_10 **)(var_35 + -0x76e0))(var_23,pOVar23,uStack_a0);
                      if (var_4 != 0) goto LAB_000e99a8;
LAB_000e9a0c:
                      var_39 = var_22(8,var_39._1_3_);
                      (**(type_10 **)(var_35 + -0x76e4))(var_17,&var_39);
                    }
LAB_000e9990:
                    var_40 = (type_4 *)((int)&var_40->calculated_value_ + 1);
                    var_31 = var_31 + 8;
                    var_42 = var_30;
                  } while (var_30 != var_40);
                }
LAB_000e978c:
                return var_41(var_42,0);
              }
              var_40 = var_26;
              puVar30 = unaff_s7;
              var_37 = var_89;
              if (var_29 == (type_4 *)&DAT_00000004) {
                var_43 = *(type_4 **)(var_11 + 0x3d84e0);
                var_42 = var_43;
                if (var_30 == (type_4 *)0x0) goto LAB_000e978c;
                var_14 = (type_4 *)0x0;
                var_40 = *(type_4 **)(var_11 + 0x3d8518);
                var_37 = (type_9 *)&DAT_00000008;
                puVar30 = &var_39;
LAB_000e96fc:
                if (var_18 != 0) {
                  var_45 = *(int *)var_31;
                  uStack_108 = 0;
                  var_4 = (**(type_10 **)(var_35 + -0x76e0))(var_23,pOVar23,uStack_a0);
                  if (var_4 != 0) goto LAB_000e9704;
LAB_000e9768:
                  var_39 = var_22((char)var_37,var_39._1_3_);
                  (*(type_10 *)var_40)(var_17,puVar30);
                  var_14 = (type_4 *)((int)&var_14->calculated_value_ + 1);
                  var_31 = var_31 + 0xc;
                  var_42 = var_30;
                  if (var_30 == var_14) goto LAB_000e978c;
                  goto LAB_000e96fc;
                }
LAB_000e9704:
                var_10 = var_35;
                var_32 = *(type_4 **)(var_31 + 4);
                var_42 = (type_4 *)((type_2)var_32 >> 8);
                if (var_21 <= var_42) {
                  var_39 = var_39 & 0xffffff;
                  (*(type_10 *)var_40)(var_17,puVar30);
LAB_000e96e0:
                  var_14 = (type_4 *)((int)&var_14->calculated_value_ + 1);
                  *(int *)(var_17 + 0xc) = *(int *)(var_17 + 0xc) + 1;
                  var_31 = var_31 + 0xc;
                  var_42 = var_30;
                  if (var_30 == var_14) goto LAB_000e978c;
                  goto LAB_000e96fc;
                }
                var_53 = (type_4 *)((int)var_42 * 0x10);
                if (var_33 != (type_4 *)0x0) {
                  var_34 = var_33 + (int)var_42 * 2;
                  var_13 = (type_2)*(type_13 *)&var_34[1].field_0x6;
                  if (var_13 < 0xff00) {
LAB_000e9898:
                    if (var_13 == 0) goto LAB_000e9744;
                    var_44 = *(type_2 *)(var_35 + -0x77f0);
                    var_10 = var_35;
                    if ((type_2)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                        <= var_13) goto LAB_000e9d0c;
                    if (*(int *)(*(int *)&pOVar23->load_address_ + var_13 * 4) == 0)
                    goto LAB_000e9768;
                    var_20 = var_34[1].calculate_only_;
                  }
                  else {
                    if (var_13 == 0xffff) {
                      var_4 = *(int *)&pOVar23->entsize_;
                      pRStack_e8 = var_42;
                      var_38 = var_32;
                      pRStack_e4 = var_53;
                      pRStack_e0 = var_34;
                      if (var_4 == 0) {
                        var_4 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);
                        *(int *)&pOVar23->entsize_ = var_4;
                      }
                      var_13 = (type_2)var_38;
                      var_38 = pRStack_e8;
                      var_42 = pRStack_e8;
                      pRStack_e8 = (type_4 *)var_13;
                      var_13 = (**(type_10 **)(var_35 + -0x7790))(var_4,pOVar23,var_42);
                      var_42 = var_38;
                      var_32 = pRStack_e8;
                      var_53 = pRStack_e4;
                      var_34 = pRStack_e0;
                      goto LAB_000e9898;
                    }
LAB_000e9744:
                    var_20 = var_34[1].calculate_only_;
                  }
                  var_10 = var_35;
                  if ((var_20 & 0xf) == 3) {
                    var_42 = (type_4 *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];
                    if (var_42 == var_43) {
                      if ((type_2)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                          <= var_13) goto LAB_000e9cec;
                      var_4 = *(int *)(*(int *)&pOVar23->load_address_ + var_13 * 4);
                      var_13 = *(type_2 *)(var_4 + 0x98);
                    }
                    else {
                      var_4 = (*(type_10 *)var_42)(pOVar23,var_13);
                      var_13 = *(type_2 *)(var_4 + 0x98);
                    }
                    *(type_2 *)(var_4 + 0x98) = var_13 & 0x7fffffff | 0x80000000;
                    var_39 = var_22(1,var_39._1_3_);
                    (*(type_10 *)var_40)(var_17,puVar30);
                  }
                  else {
                    if (((type_2)var_32 & 0xff) == 0 && var_42 == (type_4 *)0x0)
                    goto LAB_000e9768;
                    var_53 = (type_4 *)
                              ((int)&var_53->calculated_value_ +
                              (int)&pOVar23->free_space_fill_->_vptr_Output_fill);
                    if ((type_4 *)
                        (*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 4) <=
                        var_42) goto LAB_000e9cb4;
                    if ((var_53->calculated_value_ != 0) &&
                       (var_53->calculated_value_ != 0xfffffffe)) {
                      var_13 = *(type_2 *)(var_35 + -0x77f0);
                      var_42 = var_14;
LAB_000e981c:
                      (**(type_10 **)(var_35 + -0x7810))
                                (*(type_2 *)(var_35 + -0x7fc4) + 0x4570,0x71f,var_13 - 0x48c0);
                      var_14 = var_42;
                    }
                    var_53->calculated_value_ = 0xfffffffe;
                    var_39 = var_39 & 0xffffff;
                    (*(type_10 *)var_40)(var_17,puVar30);
                  }
                  goto LAB_000e96e0;
                }
                (**(type_10 **)(var_35 + -0x7810))
                          (*(type_2 *)(var_35 + -0x7fc4) + 0x39d4,0x2e4,
                           *(type_2 *)(var_35 + -0x77f0) - 0x50e0);
LAB_000e9cb4:
                (**(type_10 **)(var_10 + -0x7810))
                          (*(type_2 *)(var_10 + -0x7fc4) + 0x4570,0x8e3,
                           *(type_2 *)(var_10 + -0x77f0) - 0x5068);
              }
              (**(type_10 **)(var_10 + -0x7810))
                        (*(type_2 *)(var_10 + -0x7fc4) + 0x3588,0x279c,
                         *(type_2 *)(var_10 + -0x77f0) - 0x5098);
LAB_000e9cec:
              (**(type_10 **)(var_10 + -0x7810))
                        (*(type_2 *)(var_10 + -0x7fc4) + 0x4570,0x5c8,
                         *(type_2 *)(var_10 + -0x77f0) - 0x33a0);
LAB_000e9d08:
              var_44 = *(type_2 *)(var_10 + -0x77f0);
LAB_000e9d0c:
              (**(type_10 **)(var_10 + -0x7810))
                        (*(type_2 *)(var_10 + -0x7fc4) + 0x4570,0x50b,var_44 - 0x34dc);
LAB_000e9d24:
              (**(type_10 **)(var_10 + -0x7810))
                        (*(type_2 *)(var_10 + -0x7fc4) + 0x39d4,0x2e4,
                         *(type_2 *)(var_10 + -0x77f0) - 0x50b0);
switchD_000e9b48_caseD_3:
              var_11 = *(type_10 **)(var_10 + -0x7810);
              pcVar38 = var_59;
              (*var_11)(*(type_2 *)(var_10 + -0x7fc4) + 0x39d4,0x276,
                         *(type_2 *)(var_10 + -0x77f0) - 0x50c8);
              var_32 = pRStack_e8;
              var_42 = var_38;
              var_10 = var_11 + 0x3df4e4;
              pRStack_134 = var_33;
              puStack_140 = var_17;
              var_13 = (type_2)bStack_f1;
              pOVar22 = pOVar21;
              var_27 = var_35;
              var_47 = var_10;
              pcStack_13c = var_31;
              pRStack_138 = var_40;
              pOStack_130 = pOVar23;
              pRStack_12c = var_14;
              uStack_128 = var_18;
              puStack_124 = puVar30;
              p_Stack_120 = var_37;
              pcStack_11c = pcVar38;
              if (var_45 == 9) {
                var_48 = *(type_4 **)(var_11 + 0x3d7dc8);
                var_33 = var_48;
                if (var_46 != (type_4 *)0x0) {
                  var_40 = (type_4 *)0x0;
                  var_14 = *(type_4 **)(var_11 + 0x3d7e00);
                  var_37 = (type_9 *)&var_49;
                  puVar30 = (type_2 *)0xff00;
                  do {
                    if (var_13 == 0) {
LAB_000ea0b8:
                      var_18 = *(type_2 *)(var_27 + 4);
                      var_33 = (type_4 *)
                                ((((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                                 ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000 >> 8);
                      if (var_33 < var_43) {
                        var_62 = (type_4 *)((int)var_33 * 0x10);
                        var_10 = var_47;
                        if (var_42 == (type_4 *)0x0) goto LAB_000ea38c;
                        var_53 = var_42 + (int)var_33 * 2;
                        var_18 = (*(type_13 *)&var_53[1].field_0x6 & 0xff) << 8 |
                                (type_2)(*(type_13 *)&var_53[1].field_0x6 >> 8);
                        if (var_18 < 0xff00) {
LAB_000ea208:
                          if (var_18 == 0) goto LAB_000ea108;
                          var_44 = *(type_2 *)(var_47 + -0x77f0);
                          var_10 = var_47;
                          if ((type_2)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_
                                    >> 2) <= var_18) goto LAB_000ea3a8;
                          if (*(int *)(*(int *)&pOVar21->load_address_ + var_18 * 4) == 0)
                          goto LAB_000ea1b0;
                          var_20 = var_53[1].calculate_only_;
                        }
                        else {
                          if (var_18 == 0xffff) {
                            var_4 = *(int *)&pOVar21->entsize_;
                            pRStack_14c = var_33;
                            pRStack_148 = var_62;
                            pRStack_144 = var_53;
                            if (var_4 == 0) {
                              var_4 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])
                                                (pOVar21);
                              *(int *)&pOVar21->entsize_ = var_4;
                            }
                            var_18 = (**(type_10 **)(var_47 + -0x7790))(var_4,pOVar21,pRStack_14c);
                            var_33 = pRStack_14c;
                            var_62 = pRStack_148;
                            var_53 = pRStack_144;
                            goto LAB_000ea208;
                          }
LAB_000ea108:
                          var_20 = var_53[1].calculate_only_;
                        }
                        var_10 = var_47;
                        if ((var_20 & 0xf) == 3) {
                          var_33 = (type_4 *)(pOVar21->super_Output_data)._vptr_Output_data[0x18]
                          ;
                          if (var_33 == var_48) {
                            if ((type_2)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_
                                      >> 2) <= var_18) goto LAB_000ea354;
                            var_4 = *(int *)(*(int *)&pOVar21->load_address_ + var_18 * 4);
                            var_18 = *(type_2 *)(var_4 + 0x98);
                          }
                          else {
                            var_4 = (*(type_10 *)var_33)(pOVar21,var_18);
                            var_18 = *(type_2 *)(var_4 + 0x98);
                          }
                          *(type_2 *)(var_4 + 0x98) = var_18 & 0x7fffffff | 0x80000000;
                          var_49 = var_22(2,var_49._1_3_);
                          (*(type_10 *)var_14)(var_32,var_37);
                        }
                        else {
                          var_62 = (type_4 *)
                                  ((int)&var_62->calculated_value_ +
                                  (int)&pOVar21->free_space_fill_->_vptr_Output_fill);
                          if ((type_4 *)
                              (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4)
                              <= var_33) goto LAB_000ea338;
                          if ((var_62->calculated_value_ != 0) &&
                             (var_18 = *(type_2 *)(var_47 + -0x77f0),
                             var_62->calculated_value_ != 0xfffffffe)) goto LAB_000e9f98;
                          var_62->calculated_value_ = 0xfffffffe;
                          var_49 = var_49 & 0xffffff;
                          (*(type_10 *)var_14)(var_32,var_37);
                        }
                      }
                      else {
                        var_49 = var_49 & 0xffffff;
                        (*(type_10 *)var_14)(var_32,var_37);
                      }
                      *(int *)((int)var_32 + 0xc) = *(int *)((int)var_32 + 0xc) + 1;
                    }
                    else {
                      var_18 = *(type_2 *)var_27;
                      uStack_168 = 0;
                      var_50 = (type_4 *)
                                    ((((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                                    ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000);
                      var_4 = (**(type_10 **)(var_47 + -0x76e0))(var_39,pOVar21,uStack_108);
                      if (var_4 != 0) goto LAB_000ea0b8;
LAB_000ea1b0:
                      var_49 = var_22(8,var_49._1_3_);
                      (*(type_10 *)var_14)(var_32,var_37);
                    }
                    var_40 = (type_4 *)((int)&var_40->calculated_value_ + 1);
                    var_27 = var_27 + 8;
                    var_33 = var_46;
                  } while (var_46 != var_40);
                }
LAB_000e9f34:
                return var_41(var_33,0);
              }
              if (var_45 == 4) {
                var_40 = *(type_4 **)(var_11 + 0x3d7e00);
                var_33 = var_46;
                if (var_46 == (type_4 *)0x0) goto LAB_000e9f34;
                var_14 = (type_4 *)0x0;
                var_37 = *(type_9 **)(var_11 + 0x3d7dc8);
                puVar30 = &var_49;
LAB_000e9e0c:
                if (var_13 != 0) {
                  var_18 = *(type_2 *)var_27;
                  uStack_168 = 0;
                  var_50 = (type_4 *)
                                ((((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                                ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000);
                  var_4 = (**(type_10 **)(var_47 + -0x76e0))(var_39,pOVar21,uStack_108);
                  if (var_4 != 0) goto LAB_000e9e14;
LAB_000e9f08:
                  var_49 = var_22(8,var_49._1_3_);
                  (*(type_10 *)var_40)(var_32,puVar30);
                  var_14 = (type_4 *)((int)&var_14->calculated_value_ + 1);
                  var_27 = var_27 + 0xc;
                  var_33 = var_46;
                  if (var_46 == var_14) goto LAB_000e9f34;
                  goto LAB_000e9e0c;
                }
LAB_000e9e14:
                var_10 = var_47;
                var_18 = *(type_2 *)(var_27 + 4);
                var_33 = (type_4 *)
                          ((((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                           ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000 >> 8);
                if (var_43 <= var_33) {
                  var_49 = var_49 & 0xffffff;
                  (*(type_10 *)var_40)(var_32,puVar30);
LAB_000e9df0:
                  var_14 = (type_4 *)((int)&var_14->calculated_value_ + 1);
                  *(int *)((int)var_32 + 0xc) = *(int *)((int)var_32 + 0xc) + 1;
                  var_27 = var_27 + 0xc;
                  var_33 = var_46;
                  if (var_46 == var_14) goto LAB_000e9f34;
                  goto LAB_000e9e0c;
                }
                var_62 = (type_4 *)((int)var_33 * 0x10);
                if (var_42 != (type_4 *)0x0) {
                  var_53 = var_42 + (int)var_33 * 2;
                  var_18 = (*(type_13 *)&var_53[1].field_0x6 & 0xff) << 8 |
                          (type_2)(*(type_13 *)&var_53[1].field_0x6 >> 8);
                  if (var_18 < 0xff00) {
LAB_000ea00c:
                    if (var_18 == 0) goto LAB_000e9e68;
                    var_44 = *(type_2 *)(var_47 + -0x77f0);
                    var_10 = var_47;
                    if ((type_2)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                        <= var_18) goto LAB_000ea3a8;
                    if (*(int *)(*(int *)&pOVar21->load_address_ + var_18 * 4) == 0)
                    goto LAB_000e9f08;
                    var_20 = var_53[1].calculate_only_;
                  }
                  else {
                    if (var_18 == 0xffff) {
                      var_4 = *(int *)&pOVar21->entsize_;
                      var_48 = var_33;
                      pRStack_14c = var_62;
                      pRStack_148 = var_53;
                      if (var_4 == 0) {
                        var_4 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);
                        *(int *)&pOVar21->entsize_ = var_4;
                      }
                      var_18 = (**(type_10 **)(var_47 + -0x7790))(var_4,pOVar21,var_48);
                      var_33 = var_48;
                      var_62 = pRStack_14c;
                      var_53 = pRStack_148;
                      goto LAB_000ea00c;
                    }
LAB_000e9e68:
                    var_20 = var_53[1].calculate_only_;
                  }
                  var_10 = var_47;
                  if ((var_20 & 0xf) == 3) {
                    var_36 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];
                    if (var_36 == var_37) {
                      if ((type_2)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                          <= var_18) goto LAB_000ea354;
                      var_4 = *(int *)(*(int *)&pOVar21->load_address_ + var_18 * 4);
                      var_18 = *(type_2 *)(var_4 + 0x98);
                    }
                    else {
                      var_4 = (*var_36)(pOVar21,var_18);
                      var_18 = *(type_2 *)(var_4 + 0x98);
                    }
                    *(type_2 *)(var_4 + 0x98) = var_18 & 0x7fffffff | 0x80000000;
                    var_49 = var_22(1,var_49._1_3_);
                    (*(type_10 *)var_40)(var_32,puVar30);
                  }
                  else {
                    var_62 = (type_4 *)
                            ((int)&var_62->calculated_value_ +
                            (int)&pOVar21->free_space_fill_->_vptr_Output_fill);
                    if ((type_4 *)
                        (*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 4) <=
                        var_33) goto LAB_000ea338;
                    if ((var_62->calculated_value_ != 0) && (var_62->calculated_value_ != 0xfffffffe))
                    {
                      var_18 = *(type_2 *)(var_47 + -0x77f0);
LAB_000e9f98:
                      (**(type_10 **)(var_47 + -0x7810))
                                (*(type_2 *)(var_47 + -0x7fc4) + 0x4570,0x71f,var_18 - 0x48c0);
                    }
                    var_62->calculated_value_ = 0xfffffffe;
                    var_49 = var_49 & 0xffffff;
                    (*(type_10 *)var_40)(var_32,puVar30);
                  }
                  goto LAB_000e9df0;
                }
                (**(type_10 **)(var_47 + -0x7810))
                          (*(type_2 *)(var_47 + -0x7fc4) + 0x39d4,0x2e4,
                           *(type_2 *)(var_47 + -0x77f0) - 0x48d8);
LAB_000ea338:
                (**(type_10 **)(var_10 + -0x7810))
                          (*(type_2 *)(var_10 + -0x7fc4) + 0x4570,0x8e3,
                           *(type_2 *)(var_10 + -0x77f0) - 0x489c);
LAB_000ea354:
                (**(type_10 **)(var_10 + -0x7810))
                          (*(type_2 *)(var_10 + -0x7fc4) + 0x4570,0x5c8,
                           *(type_2 *)(var_10 + -0x77f0) - 0x33a0);
              }
              (**(type_10 **)(var_10 + -0x7810))
                        (*(type_2 *)(var_10 + -0x7fc4) + 0x3588,0x27da,
                         *(type_2 *)(var_10 + -0x77f0) - 0x4860);
LAB_000ea38c:
              var_44 = *(type_2 *)(var_10 + -0x77f0) - 0x4878;
              (**(type_10 **)(var_10 + -0x7810))(*(type_2 *)(var_10 + -0x7fc4) + 0x39d4,0x2e4,var_44);
LAB_000ea3a8:
              var_11 = *(type_10 **)(var_10 + -0x7810);
              pcVar38 = var_28;
              (*var_11)(*(type_2 *)(var_10 + -0x7fc4) + 0x4570,0x50b,var_44 - 0x34dc);
              var_34 = pRStack_148;
              var_53 = pRStack_14c;
              var_33 = var_50;
              var_10 = var_11 + 0x3dee80;
              pRStack_194 = var_42;
              uStack_1a0 = (type_2)var_32;
              var_52 = (type_2 *)(type_2)bStack_151;
              pOVar23 = pOVar22;
              var_31 = var_47;
              var_55 = var_10;
              pcStack_19c = var_27;
              pRStack_198 = var_40;
              pOStack_190 = pOVar21;
              pRStack_18c = var_14;
              uStack_188 = var_13;
              puStack_184 = puVar30;
              p_Stack_180 = var_37;
              pcStack_17c = pcVar38;
              if (var_50 == (type_4 *)0x9) {
                var_14 = *(type_4 **)(var_11 + 0x3d768c);
                if (var_51 != (type_4 *)0x0) {
                  var_40 = (type_4 *)0x0;
                  var_37 = *(type_9 **)(var_11 + 0x3d7764);
                  var_58 = (type_4 *)
                                &(*(type_4 **)(var_11 + 0x3d768c))[0x30c].calculate_only_;
                  puVar30 = (type_2 *)(*(int *)(var_11 + 0x3d6ebc) + 0x546c);
                  do {
                    if (var_52 == (type_2 *)0x0) {
LAB_000ea73c:
                      var_13 = *(type_2 *)(var_31 + 4);
                      var_14 = (type_4 *)
                                ((((var_13 >> 0x10) << 0x18 | (var_13 >> 0x18) << 0x10) >> 0x10) +
                                ((var_13 & 0xff) << 8 | var_13 >> 8 & 0xff) * 0x10000);
                      var_42 = (type_4 *)((type_2)var_14 >> 8);
                      if (var_42 < var_48) {
                        var_62 = (type_4 *)((int)var_42 * 0x10);
                        var_10 = var_55;
                        if (var_53 == (type_4 *)0x0) goto LAB_000eaad4;
                        var_32 = var_53 + (int)var_42 * 2;
                        var_54 = (type_4 *)
                                 ((*(type_13 *)&var_32[1].field_0x6 & 0xff) << 8 |
                                 (type_2)(*(type_13 *)&var_32[1].field_0x6 >> 8));
                        if (var_54 < (type_4 *)0xff00) {
LAB_000ea888:
                          if (var_54 == (type_4 *)0x0) goto LAB_000ea790;
                          var_10 = var_55;
                          if ((type_4 *)
                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                              <= var_54) goto LAB_000eaab8;
                          if (*(int *)(*(int *)&pOVar22->load_address_ + (int)var_54 * 4) == 0)
                          goto LAB_000ea7b4;
                          var_20 = var_32[1].calculate_only_;
                        }
                        else {
                          if (var_54 == (type_4 *)0xffff) {
                            var_4 = *(int *)&pOVar22->entsize_;
                            var_56 = var_14;
                            pRStack_1b0 = var_42;
                            pRStack_1ac = var_62;
                            pRStack_1a8 = var_32;
                            if (var_4 == 0) {
                              var_4 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])
                                                (pOVar22,&var_57);
                              *(int *)&pOVar22->entsize_ = var_4;
                            }
                            var_13 = (type_2)var_56;
                            var_56 = pRStack_1b0;
                            var_14 = pRStack_1b0;
                            pRStack_1b0 = (type_4 *)var_13;
                            var_54 = (type_4 *)
                                     (**(type_10 **)(var_55 + -0x7790))(var_4,pOVar22,var_14);
                            var_14 = pRStack_1b0;
                            var_42 = var_56;
                            var_62 = pRStack_1ac;
                            var_32 = pRStack_1a8;
                            goto LAB_000ea888;
                          }
LAB_000ea790:
                          var_20 = var_32[1].calculate_only_;
                        }
                        var_13 = (type_2)var_14 & 0xff;
                        var_10 = var_55;
                        if ((var_20 & 0xf) != 3) {
                          if (var_42 == (type_4 *)0x0 && var_13 == 0) goto LAB_000ea7b4;
                          var_62 = (type_4 *)
                                  ((int)&var_62->calculated_value_ +
                                  (int)&pOVar22->free_space_fill_->_vptr_Output_fill);
                          if (var_42 < (type_4 *)
                                        (*(int *)&pOVar22->field_0xec -
                                         (int)pOVar22->free_space_fill_ >> 4)) {
                            if (var_62->calculated_value_ != 0) {
                              var_4 = *(int *)(var_55 + -0x77f0);
                              var_14 = (type_4 *)0x9;
                              if (var_62->calculated_value_ != 0xfffffffe) goto LAB_000ea5b0;
                            }
                            var_62->calculated_value_ = 0xfffffffe;
                            goto LAB_000ea704;
                          }
                          goto LAB_000eaa64;
                        }
                        if (var_13 != 4) {
                          var_56 = var_54;
                          var_13 = (*(type_10 *)var_58)(var_13,pOVar22);
                          var_10 = var_55;
                          if (var_13 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            uVar11 = (*(var_55 + puVar30[var_13]))();
                            return (bool)uVar11;
                          }
                          goto switchD_000ea8f8_caseD_3;
                        }
                        var_36 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];
                        if (var_36 == var_37) {
                          if ((type_4 *)
                              ((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                              <= var_54) goto LAB_000eaa9c;
                          var_4 = *(int *)(*(int *)&pOVar22->load_address_ + (int)var_54 * 4);
                          var_56 = var_33;
                        }
                        else {
                          var_56 = var_33;
                          var_4 = (*var_36)(pOVar22,var_54);
                        }
                        var_10 = *(type_10 **)(var_55 + -0x76e4);
                        *(type_2 *)(var_4 + 0x98) = *(type_2 *)(var_4 + 0x98) & 0x7fffffff | 0x80000000;
                        var_57 = var_22((char)var_56,var_57._1_3_);
                        (*var_10)(var_34,&var_57);
                        if (var_56 == (type_4 *)&DAT_00000008) goto LAB_000ea724;
                        var_4 = *(int *)&var_34[1].calculate_only_;
                      }
                      else {
LAB_000ea704:
                        var_57 = var_57 & 0xffffff;
                        (**(type_10 **)(var_55 + -0x76e4))(var_34,&var_57);
                        var_4 = *(int *)&var_34[1].calculate_only_;
                      }
                      *(int *)&var_34[1].calculate_only_ = var_4 + 1;
                    }
                    else {
                      var_13 = *(type_2 *)var_31;
                      uStack_1d0 = 0;
                      var_60 = (((var_13 >> 0x10) << 0x18 | (var_13 >> 0x18) << 0x10) >> 0x10) +
                                   ((var_13 & 0xff) << 8 | var_13 >> 8 & 0xff) * 0x10000;
                      var_4 = (**(type_10 **)(var_55 + -0x76e0))(var_49,pOVar22,uStack_168);
                      if (var_4 != 0) goto LAB_000ea73c;
LAB_000ea7b4:
                      var_57 = var_22(8,var_57._1_3_);
                      (**(type_10 **)(var_55 + -0x76e4))(var_34,&var_57);
                    }
LAB_000ea724:
                    var_40 = (type_4 *)((int)&var_40->calculated_value_ + 1);
                    var_31 = var_31 + 8;
                    var_14 = var_51;
                  } while (var_51 != var_40);
                }
LAB_000ea518:
                return var_41(var_14,0);
              }
              if (var_50 == (type_4 *)&DAT_00000004) {
                var_58 = *(type_4 **)(var_11 + 0x3d7764);
                var_14 = var_58;
                if (var_51 == (type_4 *)0x0) goto LAB_000ea518;
                var_33 = (type_4 *)0x0;
                var_40 = *(type_4 **)(var_11 + 0x3d779c);
                var_37 = (type_9 *)&DAT_00000008;
                puVar30 = &var_57;
LAB_000ea478:
                if (var_52 != (type_2 *)0x0) {
                  var_13 = *(type_2 *)var_31;
                  uStack_1d0 = 0;
                  var_60 = (((var_13 >> 0x10) << 0x18 | (var_13 >> 0x18) << 0x10) >> 0x10) +
                               ((var_13 & 0xff) << 8 | var_13 >> 8 & 0xff) * 0x10000;
                  var_4 = (**(type_10 **)(var_55 + -0x76e0))(var_49,pOVar22,uStack_168);
                  if (var_4 != 0) goto LAB_000ea480;
LAB_000ea4f4:
                  var_57 = var_22((char)var_37,var_57._1_3_);
                  (*(type_10 *)var_40)(var_34,puVar30);
                  var_33 = (type_4 *)((int)&var_33->calculated_value_ + 1);
                  var_31 = var_31 + 0xc;
                  var_14 = var_51;
                  if (var_51 == var_33) goto LAB_000ea518;
                  goto LAB_000ea478;
                }
LAB_000ea480:
                var_10 = var_55;
                var_13 = *(type_2 *)(var_31 + 4);
                var_14 = (type_4 *)
                          ((((var_13 >> 0x10) << 0x18 | (var_13 >> 0x18) << 0x10) >> 0x10) +
                          ((var_13 & 0xff) << 8 | var_13 >> 8 & 0xff) * 0x10000);
                var_42 = (type_4 *)((type_2)var_14 >> 8);
                if (var_48 <= var_42) {
                  var_57 = var_57 & 0xffffff;
                  (*(type_10 *)var_40)(var_34,puVar30);
LAB_000ea45c:
                  var_33 = (type_4 *)((int)&var_33->calculated_value_ + 1);
                  *(int *)&var_34[1].calculate_only_ = *(int *)&var_34[1].calculate_only_ + 1;
                  var_31 = var_31 + 0xc;
                  var_14 = var_51;
                  if (var_51 == var_33) goto LAB_000ea518;
                  goto LAB_000ea478;
                }
                var_32 = (type_4 *)((int)var_42 * 0x10);
                if (var_53 != (type_4 *)0x0) {
                  var_54 = var_53 + (int)var_42 * 2;
                  var_13 = (*(type_13 *)&var_54[1].field_0x6 & 0xff) << 8 |
                          (type_2)(*(type_13 *)&var_54[1].field_0x6 >> 8);
                  if (var_13 < 0xff00) {
LAB_000ea62c:
                    if (var_13 == 0) goto LAB_000ea4d4;
                    var_4 = *(int *)(var_55 + -0x77f0);
                    var_10 = var_55;
                    if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                        <= var_13) goto LAB_000eaabc;
                    if (*(int *)(*(int *)&pOVar22->load_address_ + var_13 * 4) == 0)
                    goto LAB_000ea4f4;
                    var_20 = var_54[1].calculate_only_;
                  }
                  else {
                    if (var_13 == 0xffff) {
                      var_4 = *(int *)&pOVar22->entsize_;
                      var_56 = var_14;
                      pRStack_1b0 = var_42;
                      pRStack_1ac = var_32;
                      pRStack_1a8 = var_54;
                      if (var_4 == 0) {
                        var_4 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);
                        *(int *)&pOVar22->entsize_ = var_4;
                      }
                      var_13 = (type_2)var_56;
                      var_56 = pRStack_1b0;
                      var_14 = pRStack_1b0;
                      pRStack_1b0 = (type_4 *)var_13;
                      var_13 = (**(type_10 **)(var_55 + -0x7790))(var_4,pOVar22,var_14);
                      var_14 = pRStack_1b0;
                      var_42 = var_56;
                      var_32 = pRStack_1ac;
                      var_54 = pRStack_1a8;
                      goto LAB_000ea62c;
                    }
LAB_000ea4d4:
                    var_20 = var_54[1].calculate_only_;
                  }
                  var_10 = var_55;
                  if ((var_20 & 0xf) == 3) {
                    var_14 = (type_4 *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];
                    if (var_14 == var_58) {
                      if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= var_13) goto LAB_000eaa9c;
                      var_4 = *(int *)(*(int *)&pOVar22->load_address_ + var_13 * 4);
                      var_13 = *(type_2 *)(var_4 + 0x98);
                    }
                    else {
                      var_4 = (*(type_10 *)var_14)(pOVar22,var_13);
                      var_13 = *(type_2 *)(var_4 + 0x98);
                    }
                    *(type_2 *)(var_4 + 0x98) = var_13 & 0x7fffffff | 0x80000000;
                    var_57 = var_22(1,var_57._1_3_);
                    (*(type_10 *)var_40)(var_34,puVar30);
                  }
                  else {
                    if (((type_2)var_14 & 0xff) == 0 && var_42 == (type_4 *)0x0)
                    goto LAB_000ea4f4;
                    var_32 = (type_4 *)
                              ((int)&var_32->calculated_value_ +
                              (int)&pOVar22->free_space_fill_->_vptr_Output_fill);
                    if ((type_4 *)
                        (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 4) <=
                        var_42) goto LAB_000eaa64;
                    if ((var_32->calculated_value_ != 0) &&
                       (var_32->calculated_value_ != 0xfffffffe)) {
                      var_4 = *(int *)(var_55 + -0x77f0);
                      var_14 = var_33;
LAB_000ea5b0:
                      (**(type_10 **)(var_55 + -0x7810))
                                (*(int *)(var_55 + -0x7fc4) + 0x4570,0x71f,var_4 + -0x48c0);
                      var_33 = var_14;
                    }
                    var_32->calculated_value_ = 0xfffffffe;
                    var_57 = var_57 & 0xffffff;
                    (*(type_10 *)var_40)(var_34,puVar30);
                  }
                  goto LAB_000ea45c;
                }
                (**(type_10 **)(var_55 + -0x7810))
                          (*(int *)(var_55 + -0x7fc4) + 0x39d4,0x2e4,
                           *(int *)(var_55 + -0x77f0) + -0x4938);
LAB_000eaa64:
                (**(type_10 **)(var_10 + -0x7810))
                          (*(int *)(var_10 + -0x7fc4) + 0x4570,0x8e3,
                           *(int *)(var_10 + -0x77f0) + -0x489c);
              }
              (**(type_10 **)(var_10 + -0x7810))
                        (*(int *)(var_10 + -0x7fc4) + 0x3588,0x279c,
                         *(int *)(var_10 + -0x77f0) + -0x48f0);
LAB_000eaa9c:
              (**(type_10 **)(var_10 + -0x7810))
                        (*(int *)(var_10 + -0x7fc4) + 0x4570,0x5c8,
                         *(int *)(var_10 + -0x77f0) + -0x33a0);
LAB_000eaab8:
              var_4 = *(int *)(var_10 + -0x77f0);
LAB_000eaabc:
              (**(type_10 **)(var_10 + -0x7810))
                        (*(int *)(var_10 + -0x7fc4) + 0x4570,0x50b,var_4 + -0x34dc);
LAB_000eaad4:
              (**(type_10 **)(var_10 + -0x7810))
                        (*(int *)(var_10 + -0x7fc4) + 0x39d4,0x2e4,
                         *(int *)(var_10 + -0x77f0) + -0x4908);
switchD_000ea8f8_caseD_3:
              var_11 = *(type_10 **)(var_10 + -0x7810);
              pcVar38 = var_5<64,var_6>::var_59;
              (*var_11)(*(int *)(var_10 + -0x7fc4) + 0x39d4,0x276,
                         *(int *)(var_10 + -0x77f0) + -0x4920);
              var_42 = pRStack_1b0;
              var_14 = var_56;
              var_10 = var_11 + 0x3de734;
              pRStack_1fc = var_53;
              pRStack_208 = var_34;
              var_13 = (type_2)bStack_1b9;
              pOVar21 = pOVar23;
              var_27 = var_55;
              var_63 = var_10;
              pcStack_204 = var_31;
              pRStack_200 = var_40;
              pOStack_1f8 = pOVar22;
              pRStack_1f4 = var_33;
              puStack_1f0 = var_52;
              puStack_1ec = puVar30;
              p_Stack_1e8 = var_37;
              pcStack_1e4 = pcVar38;
              if (var_60 == 9) {
                var_64 = *(type_4 **)(var_11 + 0x3d7018);
                var_32 = var_64;
                if (var_61 != (type_4 *)0x0) {
                  var_33 = *(type_4 **)(var_11 + 0x3d7050);
                  var_40 = (type_4 *)0x0;
                  var_52 = &var_65;
                  var_37 = (type_9 *)&DAT_aaaaaaab;
                  do {
                    if (var_13 == 0) {
LAB_000eae6c:
                      var_62 = *(type_4 **)(var_27 + 8);
                      if (var_62 < var_58) {
                        var_10 = var_63;
                        if (var_14 == (type_4 *)0x0) goto LAB_000eb138;
                        var_32 = (type_4 *)((int)var_62 * 0x18);
                        var_53 = var_14 + (int)var_62 * 3;
                        var_18 = (type_2)*(type_13 *)&var_53->field_0x6;
                        if (var_18 < 0xff00) {
LAB_000eafac:
                          if (var_18 == 0) goto LAB_000eaeb0;
                          var_4 = *(int *)(var_63 + -0x77f0);
                          var_10 = var_63;
                          if ((type_2)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_
                                    >> 2) <= var_18) goto LAB_000eb154;
                          if (*(int *)(*(int *)&pOVar23->load_address_ + var_18 * 4) == 0)
                          goto LAB_000eaf54;
                          var_20 = var_53->calculate_only_;
                        }
                        else {
                          if (var_18 == 0xffff) {
                            var_4 = *(int *)&pOVar23->entsize_;
                            pRStack_20c = var_32;
                            pRStack_214 = var_62;
                            pRStack_210 = var_53;
                            if (var_4 == 0) {
                              var_4 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])
                                                (pOVar23);
                              *(int *)&pOVar23->entsize_ = var_4;
                            }
                            var_18 = (**(type_10 **)(var_63 + -0x7790))(var_4,pOVar23,pRStack_214);
                            var_32 = pRStack_20c;
                            var_62 = pRStack_214;
                            var_53 = pRStack_210;
                            goto LAB_000eafac;
                          }
LAB_000eaeb0:
                          var_20 = var_53->calculate_only_;
                        }
                        var_10 = var_63;
                        if ((var_20 & 0xf) == 3) {
                          var_32 = (type_4 *)(pOVar23->super_Output_data)._vptr_Output_data[0x18]
                          ;
                          if (var_32 == var_64) {
                            if ((type_2)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_
                                      >> 2) <= var_18) goto LAB_000eb100;
                            var_4 = *(int *)(*(int *)&pOVar23->load_address_ + var_18 * 4);
                            var_18 = *(type_2 *)(var_4 + 0x98);
                          }
                          else {
                            var_4 = (*(type_10 *)var_32)(pOVar23,var_18);
                            var_18 = *(type_2 *)(var_4 + 0x98);
                          }
                          *(type_2 *)(var_4 + 0x98) = var_18 & 0x7fffffff | 0x80000000;
                          var_65 = var_22(2,var_65._1_3_);
                          (*(type_10 *)var_33)(var_42,var_52);
                        }
                        else {
                          var_88 = (int *)((int)&var_32->calculated_value_ +
                                          (int)&pOVar23->free_space_fill_->_vptr_Output_fill);
                          if ((type_4 *)
                              ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3)
                              * -0x55555555) <= var_62) goto LAB_000eb0e4;
                          var_4 = *var_88;
                          if ((var_4 != 0) &&
                             (var_66 = *(int *)(var_63 + -0x77f0), var_4 != -2))
                          goto LAB_000ead48;
                          *var_88 = -2;
                          var_65 = var_65 & 0xffffff;
                          (*(type_10 *)var_33)(var_42,var_52);
                        }
                      }
                      else {
                        var_65 = var_65 & 0xffffff;
                        (*(type_10 *)var_33)(var_42,var_52);
                      }
                      *(int *)((int)var_42 + 0xc) = *(int *)((int)var_42 + 0xc) + 1;
                    }
                    else {
                      var_67 = *(type_4 **)(var_27 + 4);
                      uStack_230 = *(type_11 *)var_27;
                      var_4 = (**(type_10 **)(var_63 + -0x76e0))(var_57,pOVar23,uStack_1d0);
                      if (var_4 != 0) goto LAB_000eae6c;
LAB_000eaf54:
                      var_65 = var_22(8,var_65._1_3_);
                      (*(type_10 *)var_33)(var_42,var_52);
                    }
                    var_40 = (type_4 *)((int)&var_40->calculated_value_ + 1);
                    var_27 = var_27 + 0x10;
                    var_32 = var_61;
                  } while (var_61 != var_40);
                }
LAB_000eace0:
                return var_41(var_32,0);
              }
              if (var_60 == 4) {
                var_64 = *(type_4 **)(var_11 + 0x3d7018);
                var_32 = var_64;
                if (var_61 == (type_4 *)0x0) goto LAB_000eace0;
                var_40 = *(type_4 **)(var_11 + 0x3d7050);
                var_33 = (type_4 *)0x0;
                var_37 = (type_9 *)&var_65;
                var_52 = (type_2 *)&DAT_aaaaaaab;
LAB_000eabc8:
                if (var_13 != 0) {
                  var_67 = *(type_4 **)(var_27 + 4);
                  uStack_230 = *(type_11 *)var_27;
                  var_4 = (**(type_10 **)(var_63 + -0x76e0))(var_57,pOVar23,uStack_1d0);
                  if (var_4 != 0) goto LAB_000eabd0;
LAB_000eacb4:
                  var_65 = var_22(8,var_65._1_3_);
                  (*(type_10 *)var_40)(var_42,var_37);
                  var_33 = (type_4 *)((int)&var_33->calculated_value_ + 1);
                  var_27 = var_27 + 0x18;
                  var_32 = var_61;
                  if (var_61 == var_33) goto LAB_000eace0;
                  goto LAB_000eabc8;
                }
LAB_000eabd0:
                var_10 = var_63;
                var_32 = *(type_4 **)(var_27 + 8);
                if (var_58 <= var_32) {
                  var_65 = var_65 & 0xffffff;
                  (*(type_10 *)var_40)(var_42,var_37);
LAB_000eabac:
                  var_33 = (type_4 *)((int)&var_33->calculated_value_ + 1);
                  *(int *)((int)var_42 + 0xc) = *(int *)((int)var_42 + 0xc) + 1;
                  var_27 = var_27 + 0x18;
                  var_32 = var_61;
                  if (var_61 == var_33) goto LAB_000eace0;
                  goto LAB_000eabc8;
                }
                var_62 = (type_4 *)((int)var_32 * 2);
                if (var_14 != (type_4 *)0x0) {
                  var_62 = (type_4 *)((int)var_32 * 0x18);
                  var_53 = var_14 + (int)var_32 * 3;
                  var_18 = (type_2)*(type_13 *)&var_53->field_0x6;
                  if (var_18 < 0xff00) {
LAB_000eadbc:
                    if (var_18 == 0) goto LAB_000eac14;
                    var_4 = *(int *)(var_63 + -0x77f0);
                    var_10 = var_63;
                    if ((type_2)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                        <= var_18) goto LAB_000eb154;
                    if (*(int *)(*(int *)&pOVar23->load_address_ + var_18 * 4) == 0)
                    goto LAB_000eacb4;
                    var_20 = var_53->calculate_only_;
                  }
                  else {
                    if (var_18 == 0xffff) {
                      var_4 = *(int *)&pOVar23->entsize_;
                      pRStack_214 = var_32;
                      pRStack_20c = var_62;
                      pRStack_210 = var_53;
                      if (var_4 == 0) {
                        var_4 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);
                        *(int *)&pOVar23->entsize_ = var_4;
                      }
                      var_18 = (**(type_10 **)(var_63 + -0x7790))(var_4,pOVar23,pRStack_214);
                      var_32 = pRStack_214;
                      var_62 = pRStack_20c;
                      var_53 = pRStack_210;
                      goto LAB_000eadbc;
                    }
LAB_000eac14:
                    var_20 = var_53->calculate_only_;
                  }
                  var_10 = var_63;
                  if ((var_20 & 0xf) == 3) {
                    var_32 = (type_4 *)(pOVar23->super_Output_data)._vptr_Output_data[0x18];
                    if (var_32 == var_64) {
                      if ((type_2)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                          <= var_18) goto LAB_000eb100;
                      var_4 = *(int *)(*(int *)&pOVar23->load_address_ + var_18 * 4);
                      var_18 = *(type_2 *)(var_4 + 0x98);
                    }
                    else {
                      var_4 = (*(type_10 *)var_32)(pOVar23,var_18);
                      var_18 = *(type_2 *)(var_4 + 0x98);
                    }
                    *(type_2 *)(var_4 + 0x98) = var_18 & 0x7fffffff | 0x80000000;
                    var_65 = var_22(1,var_65._1_3_);
                    (*(type_10 *)var_40)(var_42,var_37);
                  }
                  else {
                    var_62 = (type_4 *)
                            ((int)&var_62->calculated_value_ +
                            (int)&pOVar23->free_space_fill_->_vptr_Output_fill);
                    if ((type_4 *)
                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *
                        (int)var_52) <= var_32) goto LAB_000eb0e4;
                    if ((var_62->calculated_value_ != 0) && (var_62->calculated_value_ != 0xfffffffe))
                    {
                      var_66 = *(int *)(var_63 + -0x77f0);
LAB_000ead48:
                      (**(type_10 **)(var_63 + -0x7810))
                                (*(int *)(var_63 + -0x7fc4) + 0x4570,0x71f,var_66 + -0x3524);
                    }
                    var_62->calculated_value_ = 0xfffffffe;
                    var_65 = var_65 & 0xffffff;
                    (*(type_10 *)var_40)(var_42,var_37);
                  }
                  goto LAB_000eabac;
                }
                (**(type_10 **)(var_63 + -0x7810))
                          (*(int *)(var_63 + -0x7fc4) + 0x39d4,0x2e4,
                           *(int *)(var_63 + -0x77f0) + -0x4140);
LAB_000eb0e4:
                (**(type_10 **)(var_10 + -0x7810))
                          (*(int *)(var_10 + -0x7fc4) + 0x4570,0x8e3,
                           *(int *)(var_10 + -0x77f0) + -0x4128);
LAB_000eb100:
                (**(type_10 **)(var_10 + -0x7810))
                          (*(int *)(var_10 + -0x7fc4) + 0x4570,0x5c8,
                           *(int *)(var_10 + -0x77f0) + -0x33a0);
              }
              (**(type_10 **)(var_10 + -0x7810))
                        (*(int *)(var_10 + -0x7fc4) + 0x3588,0x27da,
                         *(int *)(var_10 + -0x77f0) + -0x40ec);
LAB_000eb138:
              var_4 = *(int *)(var_10 + -0x77f0) + -0x4104;
              (**(type_10 **)(var_10 + -0x7810))(*(int *)(var_10 + -0x7fc4) + 0x39d4,0x2e4,var_4);
LAB_000eb154:
              var_11 = *(type_10 **)(var_10 + -0x7810);
              pcVar38 = var_5<64,var_6>::var_28;
              (*var_11)(*(int *)(var_10 + -0x7fc4) + 0x4570,0x50b,var_4 + -0x34dc);
              var_34 = pRStack_210;
              var_53 = pRStack_214;
              var_32 = var_67;
              var_10 = var_11 + 0x3de0d4;
              pRStack_25c = var_14;
              uStack_268 = (type_2)var_42;
              var_18 = (type_2)bStack_219;
              pOVar22 = pOVar21;
              var_31 = var_63;
              var_69 = var_10;
              pcStack_264 = var_27;
              pRStack_260 = var_40;
              pOStack_258 = pOVar23;
              pRStack_254 = var_33;
              puStack_250 = var_52;
              uStack_24c = var_13;
              p_Stack_248 = var_37;
              pcStack_244 = pcVar38;
              if (var_67 == (type_4 *)0x9) {
                var_14 = *(type_4 **)(var_11 + 0x3d68e0);
                if (var_68 != (type_4 *)0x0) {
                  var_40 = (type_4 *)0x0;
                  var_37 = *(type_9 **)(var_11 + 0x3d69b8);
                  var_72 = (type_4 *)
                                &(*(type_4 **)(var_11 + 0x3d68e0))[0x30c].calculate_only_;
                  var_52 = (type_2 *)(*(int *)(var_11 + 0x3d6110) + 0x5490);
                  do {
                    if (var_18 == 0) {
LAB_000eb4e4:
                      var_14 = *(type_4 **)(var_31 + 8);
                      if (var_14 < var_64) {
                        var_10 = var_69;
                        if (var_53 == (type_4 *)0x0) goto LAB_000eb878;
                        var_4 = (int)var_14 * 0x18;
                        var_33 = var_53 + (int)var_14 * 3;
                        var_42 = (type_4 *)(type_2)*(type_13 *)&var_33->field_0x6;
                        var_62 = (type_4 *)(type_2)(type_12)var_31[0xf];
                        if (var_42 < (type_4 *)0xff00) {
LAB_000eb628:
                          if (var_42 == (type_4 *)0x0) goto LAB_000eb52c;
                          var_10 = var_69;
                          if ((type_4 *)
                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                              <= var_42) goto LAB_000eb85c;
                          if (*(int *)(*(int *)&pOVar21->load_address_ + (int)var_42 * 4) == 0)
                          goto LAB_000eb5c8;
                          var_20 = var_33->calculate_only_;
                        }
                        else {
                          if (var_42 == (type_4 *)0xffff) {
                            var_66 = *(int *)&pOVar21->entsize_;
                            iStack_270 = var_4;
                            var_70 = var_14;
                            pRStack_278 = var_62;
                            pRStack_274 = var_33;
                            if (var_66 == 0) {
                              var_66 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])
                                                 (pOVar21,&var_71);
                              *(int *)&pOVar21->entsize_ = var_66;
                            }
                            var_42 = (type_4 *)
                                      (**(type_10 **)(var_69 + -0x7790))
                                                (var_66,pOVar21,var_70);
                            var_4 = iStack_270;
                            var_14 = var_70;
                            var_62 = pRStack_278;
                            var_33 = pRStack_274;
                            goto LAB_000eb628;
                          }
LAB_000eb52c:
                          var_20 = var_33->calculate_only_;
                        }
                        var_10 = var_69;
                        if ((var_20 & 0xf) != 3) {
                          if ((var_62 == (type_4 *)0x0) && (var_14 == (type_4 *)0x0))
                          goto LAB_000eb5c8;
                          var_88 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill +
                                          var_4);
                          if (var_14 < (type_4 *)
                                        ((*(int *)&pOVar21->field_0xec -
                                          (int)pOVar21->free_space_fill_ >> 3) * -0x55555555)) {
                            var_4 = *var_88;
                            if (var_4 != 0) {
                              var_13 = *(type_2 *)(var_69 + -0x77f0);
                              var_14 = (type_4 *)0x9;
                              if (var_4 != -2) goto LAB_000eb2d8;
                            }
                            *var_88 = -2;
                            goto LAB_000eb4ac;
                          }
                          goto LAB_000eb808;
                        }
                        if (var_62 != (type_4 *)&DAT_00000004) {
                          var_70 = var_42;
                          var_13 = (*(type_10 *)var_72)(var_62,pOVar21);
                          var_10 = var_69;
                          if (var_13 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            uVar11 = (*(var_69 + var_52[var_13]))();
                            return (bool)uVar11;
                          }
                          goto switchD_000eb69c_caseD_3;
                        }
                        var_36 = (pOVar21->super_Output_data)._vptr_Output_data[0x18];
                        if (var_36 == var_37) {
                          if ((type_4 *)
                              ((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                              <= var_42) goto LAB_000eb840;
                          var_4 = *(int *)(*(int *)&pOVar21->load_address_ + (int)var_42 * 4);
                          var_70 = var_32;
                        }
                        else {
                          var_70 = var_32;
                          var_4 = (*var_36)(pOVar21,var_42);
                        }
                        var_10 = *(type_10 **)(var_69 + -0x76e4);
                        *(type_2 *)(var_4 + 0x98) = *(type_2 *)(var_4 + 0x98) & 0x7fffffff | 0x80000000;
                        var_71 = var_22((char)var_70,var_71._1_3_);
                        (*var_10)(var_34,&var_71);
                        if (var_70 == (type_4 *)&DAT_00000008) goto LAB_000eb4cc;
                        var_4 = *(int *)&var_34[1].calculate_only_;
                      }
                      else {
LAB_000eb4ac:
                        var_71 = var_71 & 0xffffff;
                        (**(type_10 **)(var_69 + -0x76e4))(var_34,&var_71);
                        var_4 = *(int *)&var_34[1].calculate_only_;
                      }
                      *(int *)&var_34[1].calculate_only_ = var_4 + 1;
                    }
                    else {
                      var_74 = *(int *)(var_31 + 4);
                      uStack_298 = *(type_11 *)var_31;
                      var_4 = (**(type_10 **)(var_69 + -0x76e0))(var_65,pOVar21,uStack_230);
                      if (var_4 != 0) goto LAB_000eb4e4;
LAB_000eb5c8:
                      var_71 = var_22(8,var_71._1_3_);
                      (**(type_10 **)(var_69 + -0x76e4))(var_34,&var_71);
                    }
LAB_000eb4cc:
                    var_40 = (type_4 *)((int)&var_40->calculated_value_ + 1);
                    var_31 = var_31 + 0x10;
                    var_14 = var_68;
                  } while (var_68 != var_40);
                }
LAB_000eb454:
                return var_41(var_14,0);
              }
              if (var_67 == (type_4 *)&DAT_00000004) {
                var_72 = *(type_4 **)(var_11 + 0x3d69b8);
                var_14 = var_72;
                if (var_68 == (type_4 *)0x0) goto LAB_000eb454;
                var_40 = *(type_4 **)(var_11 + 0x3d69f0);
                var_32 = (type_4 *)0x0;
                var_37 = (type_9 *)&var_71;
                var_52 = (type_2 *)&DAT_aaaaaaab;
LAB_000eb228:
                if (var_18 != 0) {
                  var_74 = *(int *)(var_31 + 4);
                  uStack_298 = *(type_11 *)var_31;
                  var_4 = (**(type_10 **)(var_69 + -0x76e0))(var_65,pOVar21,uStack_230);
                  if (var_4 != 0) goto LAB_000eb230;
LAB_000eb42c:
                  var_71 = var_22(8,var_71._1_3_);
                  (*(type_10 *)var_40)(var_34,var_37);
                  var_32 = (type_4 *)((int)&var_32->calculated_value_ + 1);
                  var_31 = var_31 + 0x18;
                  var_14 = var_68;
                  if (var_68 == var_32) goto LAB_000eb454;
                  goto LAB_000eb228;
                }
LAB_000eb230:
                var_10 = var_69;
                var_62 = *(type_4 **)(var_31 + 8);
                if (var_64 <= var_62) {
                  var_71 = var_71 & 0xffffff;
                  (*(type_10 *)var_40)(var_34,var_37);
LAB_000eb20c:
                  var_32 = (type_4 *)((int)&var_32->calculated_value_ + 1);
                  *(int *)&var_34[1].calculate_only_ = *(int *)&var_34[1].calculate_only_ + 1;
                  var_31 = var_31 + 0x18;
                  var_14 = var_68;
                  if (var_68 == var_32) goto LAB_000eb454;
                  goto LAB_000eb228;
                }
                if (var_53 != (type_4 *)0x0) {
                  var_4 = (int)var_62 * 0x18;
                  var_33 = var_53 + (int)var_62 * 3;
                  var_13 = (type_2)*(type_13 *)&var_33->field_0x6;
                  var_14 = (type_4 *)(type_2)(type_12)var_31[0xf];
                  if (var_13 < 0xff00) {
LAB_000eb354:
                    if (var_13 == 0) goto LAB_000eb278;
                    var_44 = *(type_2 *)(var_69 + -0x77f0);
                    var_10 = var_69;
                    if ((type_2)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                        <= var_13) goto LAB_000eb860;
                    if (*(int *)(*(int *)&pOVar21->load_address_ + var_13 * 4) == 0)
                    goto LAB_000eb42c;
                    var_20 = var_33->calculate_only_;
                  }
                  else {
                    if (var_13 == 0xffff) {
                      var_66 = *(int *)&pOVar21->entsize_;
                      iStack_270 = var_4;
                      var_70 = var_62;
                      pRStack_278 = var_14;
                      pRStack_274 = var_33;
                      if (var_66 == 0) {
                        var_66 = (*(pOVar21->super_Output_data)._vptr_Output_data[0x1b])(pOVar21);
                        *(int *)&pOVar21->entsize_ = var_66;
                      }
                      var_13 = (**(type_10 **)(var_69 + -0x7790))(var_66,pOVar21,var_70);
                      var_4 = iStack_270;
                      var_62 = var_70;
                      var_14 = pRStack_278;
                      var_33 = pRStack_274;
                      goto LAB_000eb354;
                    }
LAB_000eb278:
                    var_20 = var_33->calculate_only_;
                  }
                  var_10 = var_69;
                  if ((var_20 & 0xf) == 3) {
                    var_14 = (type_4 *)(pOVar21->super_Output_data)._vptr_Output_data[0x18];
                    if (var_14 == var_72) {
                      if ((type_2)((int)pOVar21->load_address_ - *(int *)&pOVar21->load_address_ >> 2)
                          <= var_13) goto LAB_000eb840;
                      var_4 = *(int *)(*(int *)&pOVar21->load_address_ + var_13 * 4);
                      var_13 = *(type_2 *)(var_4 + 0x98);
                    }
                    else {
                      var_4 = (*(type_10 *)var_14)(pOVar21,var_13);
                      var_13 = *(type_2 *)(var_4 + 0x98);
                    }
                    *(type_2 *)(var_4 + 0x98) = var_13 & 0x7fffffff | 0x80000000;
                    var_71 = var_22(1,var_71._1_3_);
                    (*(type_10 *)var_40)(var_34,var_37);
                  }
                  else {
                    if ((var_14 == (type_4 *)0x0) && (var_62 == (type_4 *)0x0))
                    goto LAB_000eb42c;
                    var_88 = (int *)((int)&pOVar21->free_space_fill_->_vptr_Output_fill + var_4);
                    if ((type_4 *)
                        ((*(int *)&pOVar21->field_0xec - (int)pOVar21->free_space_fill_ >> 3) *
                        (int)var_52) <= var_62) goto LAB_000eb808;
                    if ((*var_88 != 0) && (*var_88 != -2)) {
                      var_13 = *(type_2 *)(var_69 + -0x77f0);
                      var_14 = var_32;
LAB_000eb2d8:
                      (**(type_10 **)(var_69 + -0x7810))
                                (*(type_2 *)(var_69 + -0x7fc4) + 0x4570,0x71f,var_13 - 0x3524);
                      var_88 = extraout_v1;
                      var_32 = var_14;
                    }
                    *var_88 = -2;
                    var_71 = var_71 & 0xffffff;
                    (*(type_10 *)var_40)(var_34,var_37);
                  }
                  goto LAB_000eb20c;
                }
                (**(type_10 **)(var_69 + -0x7810))
                          (*(type_2 *)(var_69 + -0x7fc4) + 0x39d4,0x2e4,
                           *(type_2 *)(var_69 + -0x77f0) - 0x41a0);
LAB_000eb808:
                (**(type_10 **)(var_10 + -0x7810))
                          (*(type_2 *)(var_10 + -0x7fc4) + 0x4570,0x8e3,
                           *(type_2 *)(var_10 + -0x77f0) - 0x4128);
              }
              (**(type_10 **)(var_10 + -0x7810))
                        (*(type_2 *)(var_10 + -0x7fc4) + 0x3588,0x279c,
                         *(type_2 *)(var_10 + -0x77f0) - 0x4158);
LAB_000eb840:
              (**(type_10 **)(var_10 + -0x7810))
                        (*(type_2 *)(var_10 + -0x7fc4) + 0x4570,0x5c8,
                         *(type_2 *)(var_10 + -0x77f0) - 0x33a0);
LAB_000eb85c:
              var_44 = *(type_2 *)(var_10 + -0x77f0);
LAB_000eb860:
              (**(type_10 **)(var_10 + -0x7810))
                        (*(type_2 *)(var_10 + -0x7fc4) + 0x4570,0x50b,var_44 - 0x34dc);
LAB_000eb878:
              (**(type_10 **)(var_10 + -0x7810))
                        (*(type_2 *)(var_10 + -0x7fc4) + 0x39d4,0x2e4,
                         *(type_2 *)(var_10 + -0x77f0) - 0x4170);
switchD_000eb69c_caseD_3:
              var_11 = *(type_10 **)(var_10 + -0x7810);
              pcVar38 = var_5<64,var_73>::var_59;
              (*var_11)(*(type_2 *)(var_10 + -0x7fc4) + 0x39d4,0x276,
                         *(type_2 *)(var_10 + -0x77f0) - 0x4188);
              var_33 = pRStack_278;
              var_14 = var_70;
              var_10 = var_11 + 0x3dd990;
              pRStack_2c4 = var_53;
              pRStack_2cc = var_34;
              var_13 = (type_2)bStack_281;
              pOVar23 = pOVar22;
              var_27 = var_69;
              var_76 = var_10;
              pcStack_2d0 = var_31;
              pRStack_2c8 = var_40;
              pOStack_2c0 = pOVar21;
              pRStack_2bc = var_32;
              puStack_2b8 = var_52;
              uStack_2b4 = var_18;
              p_Stack_2b0 = var_37;
              pcStack_2ac = pcVar38;
              if (var_74 == 9) {
                var_77 = *(type_4 **)(var_11 + 0x3d6274);
                var_42 = var_77;
                if (var_75 != (type_4 *)0x0) {
                  var_32 = *(type_4 **)(var_11 + 0x3d62ac);
                  var_40 = (type_4 *)0x0;
                  var_52 = &var_78;
                  var_37 = (type_9 *)&DAT_aaaaaaab;
                  do {
                    if (var_13 == 0) {
LAB_000ebc34:
                      var_18 = *(type_2 *)(var_27 + 8);
                      var_42 = (type_4 *)
                                ((((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                                ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000);
                      if (var_42 < var_72) {
                        var_10 = var_76;
                        if (var_14 == (type_4 *)0x0) goto LAB_000ebf20;
                        var_4 = (int)var_42 * 0x18;
                        var_53 = var_14 + (int)var_42 * 3;
                        var_18 = (*(type_13 *)&var_53->field_0x6 & 0xff) << 8 |
                                (type_2)(*(type_13 *)&var_53->field_0x6 >> 8);
                        if (var_18 < 0xff00) {
LAB_000ebd98:
                          if (var_18 == 0) goto LAB_000ebc8c;
                          var_66 = *(int *)(var_76 + -0x77f0);
                          var_10 = var_76;
                          if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_
                                    >> 2) <= var_18) goto LAB_000ebf3c;
                          if (*(int *)(*(int *)&pOVar22->load_address_ + var_18 * 4) == 0)
                          goto LAB_000ebd40;
                          var_20 = var_53->calculate_only_;
                        }
                        else {
                          if (var_18 == 0xffff) {
                            var_66 = *(int *)&pOVar22->entsize_;
                            pRStack_2dc = var_42;
                            iStack_2d4 = var_4;
                            pRStack_2d8 = var_53;
                            if (var_66 == 0) {
                              var_66 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])
                                                 (pOVar22);
                              *(int *)&pOVar22->entsize_ = var_66;
                            }
                            var_18 = (**(type_10 **)(var_76 + -0x7790))(var_66,pOVar22,pRStack_2dc)
                            ;
                            var_42 = pRStack_2dc;
                            var_4 = iStack_2d4;
                            var_53 = pRStack_2d8;
                            goto LAB_000ebd98;
                          }
LAB_000ebc8c:
                          var_20 = var_53->calculate_only_;
                        }
                        var_10 = var_76;
                        if ((var_20 & 0xf) == 3) {
                          var_42 = (type_4 *)(pOVar22->super_Output_data)._vptr_Output_data[0x18]
                          ;
                          if (var_42 == var_77) {
                            if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_
                                      >> 2) <= var_18) goto LAB_000ebee8;
                            var_4 = *(int *)(*(int *)&pOVar22->load_address_ + var_18 * 4);
                            var_18 = *(type_2 *)(var_4 + 0x98);
                          }
                          else {
                            var_4 = (*(type_10 *)var_42)(pOVar22,var_18);
                            var_18 = *(type_2 *)(var_4 + 0x98);
                          }
                          *(type_2 *)(var_4 + 0x98) = var_18 & 0x7fffffff | 0x80000000;
                          var_78 = var_22(2,var_78._1_3_);
                          (*(type_10 *)var_32)(var_33,var_52);
                        }
                        else {
                          var_88 = (int *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill +
                                          var_4);
                          if ((type_4 *)
                              ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3)
                              * -0x55555555) <= var_42) goto LAB_000ebecc;
                          var_4 = *var_88;
                          if ((var_4 != 0) &&
                             (var_66 = *(int *)(var_76 + -0x77f0), var_4 != -2))
                          goto LAB_000ebb10;
                          *var_88 = -2;
                          var_78 = var_78 & 0xffffff;
                          (*(type_10 *)var_32)(var_33,var_52);
                        }
                      }
                      else {
                        var_78 = var_78 & 0xffffff;
                        (*(type_10 *)var_32)(var_33,var_52);
                      }
                      *(int *)&var_33[1].calculate_only_ = *(int *)&var_33[1].calculate_only_ + 1;
                    }
                    else {
                      var_44 = *(type_2 *)var_27;
                      var_18 = *(type_2 *)(var_27 + 4);
                      var_79 = (type_4 *)
                                    ((((var_44 >> 0x10) << 0x18 | (var_44 >> 0x18) << 0x10) >> 0x10)
                                    + ((var_44 & 0xff) << 8 | var_44 >> 8 & 0xff) * 0x10000);
                      iStack_2f8 = (((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                                   ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000;
                      var_4 = (**(type_10 **)(var_76 + -0x76e0))(var_71,pOVar22,uStack_298);
                      if (var_4 != 0) goto LAB_000ebc34;
LAB_000ebd40:
                      var_78 = var_22(8,var_78._1_3_);
                      (*(type_10 *)var_32)(var_33,var_52);
                    }
                    var_40 = (type_4 *)((int)&var_40->calculated_value_ + 1);
                    var_27 = var_27 + 0x10;
                    var_42 = var_75;
                  } while (var_75 != var_40);
                }
LAB_000ebaa8:
                return var_41(var_42,0);
              }
              if (var_74 == 4) {
                var_77 = *(type_4 **)(var_11 + 0x3d6274);
                var_42 = var_77;
                if (var_75 == (type_4 *)0x0) goto LAB_000ebaa8;
                var_40 = *(type_4 **)(var_11 + 0x3d62ac);
                var_32 = (type_4 *)0x0;
                var_37 = (type_9 *)&var_78;
                var_52 = (type_2 *)&DAT_aaaaaaab;
LAB_000eb96c:
                if (var_13 != 0) {
                  var_44 = *(type_2 *)var_27;
                  var_18 = *(type_2 *)(var_27 + 4);
                  var_79 = (type_4 *)
                                ((((var_44 >> 0x10) << 0x18 | (var_44 >> 0x18) << 0x10) >> 0x10) +
                                ((var_44 & 0xff) << 8 | var_44 >> 8 & 0xff) * 0x10000);
                  iStack_2f8 = (((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                               ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000;
                  var_4 = (**(type_10 **)(var_76 + -0x76e0))(var_71,pOVar22,uStack_298);
                  if (var_4 != 0) goto LAB_000eb974;
LAB_000eba7c:
                  var_78 = var_22(8,var_78._1_3_);
                  (*(type_10 *)var_40)(var_33,var_37);
                  var_32 = (type_4 *)((int)&var_32->calculated_value_ + 1);
                  var_27 = var_27 + 0x18;
                  var_42 = var_75;
                  if (var_75 == var_32) goto LAB_000ebaa8;
                  goto LAB_000eb96c;
                }
LAB_000eb974:
                var_10 = var_76;
                var_18 = *(type_2 *)(var_27 + 8);
                var_42 = (type_4 *)
                          ((((var_18 >> 0x10) << 0x18 | (var_18 >> 0x18) << 0x10) >> 0x10) +
                          ((var_18 & 0xff) << 8 | var_18 >> 8 & 0xff) * 0x10000);
                if (var_72 <= var_42) {
                  var_78 = var_78 & 0xffffff;
                  (*(type_10 *)var_40)(var_33,var_37);
LAB_000eb950:
                  var_32 = (type_4 *)((int)&var_32->calculated_value_ + 1);
                  *(int *)&var_33[1].calculate_only_ = *(int *)&var_33[1].calculate_only_ + 1;
                  var_27 = var_27 + 0x18;
                  var_42 = var_75;
                  if (var_75 == var_32) goto LAB_000ebaa8;
                  goto LAB_000eb96c;
                }
                if (var_14 != (type_4 *)0x0) {
                  var_4 = (int)var_42 * 0x18;
                  var_53 = var_14 + (int)var_42 * 3;
                  var_18 = (*(type_13 *)&var_53->field_0x6 & 0xff) << 8 |
                          (type_2)(*(type_13 *)&var_53->field_0x6 >> 8);
                  if (var_18 < 0xff00) {
LAB_000ebb84:
                    if (var_18 == 0) goto LAB_000eb9cc;
                    var_66 = *(int *)(var_76 + -0x77f0);
                    var_10 = var_76;
                    if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                        <= var_18) goto LAB_000ebf3c;
                    if (*(int *)(*(int *)&pOVar22->load_address_ + var_18 * 4) == 0)
                    goto LAB_000eba7c;
                    var_20 = var_53->calculate_only_;
                  }
                  else {
                    if (var_18 == 0xffff) {
                      var_66 = *(int *)&pOVar22->entsize_;
                      pRStack_2dc = var_42;
                      iStack_2d4 = var_4;
                      pRStack_2d8 = var_53;
                      if (var_66 == 0) {
                        var_66 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);
                        *(int *)&pOVar22->entsize_ = var_66;
                      }
                      var_18 = (**(type_10 **)(var_76 + -0x7790))(var_66,pOVar22,pRStack_2dc);
                      var_42 = pRStack_2dc;
                      var_4 = iStack_2d4;
                      var_53 = pRStack_2d8;
                      goto LAB_000ebb84;
                    }
LAB_000eb9cc:
                    var_20 = var_53->calculate_only_;
                  }
                  var_10 = var_76;
                  if ((var_20 & 0xf) == 3) {
                    var_42 = (type_4 *)(pOVar22->super_Output_data)._vptr_Output_data[0x18];
                    if (var_42 == var_77) {
                      if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= var_18) goto LAB_000ebee8;
                      var_4 = *(int *)(*(int *)&pOVar22->load_address_ + var_18 * 4);
                      var_18 = *(type_2 *)(var_4 + 0x98);
                    }
                    else {
                      var_4 = (*(type_10 *)var_42)(pOVar22,var_18);
                      var_18 = *(type_2 *)(var_4 + 0x98);
                    }
                    *(type_2 *)(var_4 + 0x98) = var_18 & 0x7fffffff | 0x80000000;
                    var_78 = var_22(1,var_78._1_3_);
                    (*(type_10 *)var_40)(var_33,var_37);
                  }
                  else {
                    var_62 = (type_4 *)((int)&pOVar22->free_space_fill_->_vptr_Output_fill + var_4)
                    ;
                    if ((type_4 *)
                        ((*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_ >> 3) *
                        (int)var_52) <= var_42) goto LAB_000ebecc;
                    if ((var_62->calculated_value_ != 0) && (var_62->calculated_value_ != 0xfffffffe))
                    {
                      var_66 = *(int *)(var_76 + -0x77f0);
LAB_000ebb10:
                      (**(type_10 **)(var_76 + -0x7810))
                                (*(int *)(var_76 + -0x7fc4) + 0x4570,0x71f,var_66 + -0x3524);
                    }
                    var_62->calculated_value_ = 0xfffffffe;
                    var_78 = var_78 & 0xffffff;
                    (*(type_10 *)var_40)(var_33,var_37);
                  }
                  goto LAB_000eb950;
                }
                (**(type_10 **)(var_76 + -0x7810))
                          (*(int *)(var_76 + -0x7fc4) + 0x39d4,0x2e4,
                           *(int *)(var_76 + -0x77f0) + -0x353c);
LAB_000ebecc:
                (**(type_10 **)(var_10 + -0x7810))
                          (*(int *)(var_10 + -0x7fc4) + 0x4570,0x8e3,
                           *(int *)(var_10 + -0x77f0) + -0x3500);
LAB_000ebee8:
                (**(type_10 **)(var_10 + -0x7810))
                          (*(int *)(var_10 + -0x7fc4) + 0x4570,0x5c8,
                           *(int *)(var_10 + -0x77f0) + -0x33a0);
              }
              (**(type_10 **)(var_10 + -0x7810))
                        (*(int *)(var_10 + -0x7fc4) + 0x3588,0x27da,
                         *(int *)(var_10 + -0x77f0) + -0x34b0);
LAB_000ebf20:
              var_66 = *(int *)(var_10 + -0x77f0) + -0x34c8;
              (**(type_10 **)(var_10 + -0x7810))(*(int *)(var_10 + -0x7fc4) + 0x39d4,0x2e4,var_66);
LAB_000ebf3c:
              var_31 = *(type_10 **)(var_10 + -0x7810);
              var_11 = var_5<64,var_73>::var_28;
              (*var_31)(*(int *)(var_10 + -0x7fc4) + 0x4570,0x50b,var_66 + -0x34dc);
              var_34 = pRStack_2d8;
              var_53 = pRStack_2dc;
              var_42 = var_79;
              pRStack_324 = var_14;
              pRStack_330 = var_33;
              var_10 = var_76;
              pcStack_32c = var_27;
              pRStack_328 = var_40;
              pOStack_320 = pOVar22;
              pRStack_31c = var_32;
              puStack_318 = var_52;
              uStack_314 = var_13;
              p_Stack_310 = var_37;
              pcStack_30c = var_11;
              if (var_79 == (type_4 *)0x9) {
                var_37 = *(type_9 **)(var_31 + 0x3d5af8);
                if (var_80 != (type_9 *)0x0) {
                  var_36 = (type_9 *)0x0;
                  var_82 = *(type_9 **)(var_31 + 0x3d5bd0);
                  var_85 = *(type_9 **)(var_31 + 0x3d5af8) + 0x1864;
                  var_17 = (type_5 *)(*(int *)(var_31 + 0x3d5328) + 0x54b4);
                  do {
                    if ((var_81 == '\0') ||
                       (var_4 = (**(type_10 **)(var_31 + 0x3d5c0c))(var_78,pOVar23,iStack_2f8),
                       var_4 != 0)) {
                      var_13 = *(type_2 *)(var_10 + 8);
                      var_14 = (type_4 *)
                                ((((var_13 >> 0x10) << 0x18 | (var_13 >> 0x18) << 0x10) >> 0x10) +
                                ((var_13 & 0xff) << 8 | var_13 >> 8 & 0xff) * 0x10000);
                      if (var_14 < var_77) {
                        if (var_53 == (type_4 *)0x0) goto LAB_000ec6a4;
                        var_13 = (type_2)(type_12)var_10[0xf];
                        var_4 = (int)var_14 * 0x18;
                        var_33 = var_53 + (int)var_14 * 3;
                        var_40 = (type_4 *)
                                  ((*(type_13 *)&var_33->field_0x6 & 0xff) << 8 |
                                  (type_2)(*(type_13 *)&var_33->field_0x6 >> 8));
                        if (var_40 < (type_4 *)0xff00) {
LAB_000ec454:
                          if (var_40 == (type_4 *)0x0) goto LAB_000ec348;
                          if ((type_4 *)
                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                              <= var_40) goto LAB_000ec688;
                          if (*(int *)(*(int *)&pOVar23->load_address_ + (int)var_40 * 4) == 0)
                          goto LAB_000ec3f4;
                          var_20 = var_33->calculate_only_;
                        }
                        else {
                          if (var_40 == (type_4 *)0xffff) {
                            var_66 = *(int *)&pOVar23->entsize_;
                            var_83 = var_14;
                            iStack_338 = var_4;
                            uStack_340 = var_13;
                            pRStack_33c = var_33;
                            if (var_66 == 0) {
                              var_66 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])
                                                 (pOVar23,auStack_350);
                              *(int *)&pOVar23->entsize_ = var_66;
                            }
                            var_40 = (type_4 *)
                                      (**(type_10 **)(var_31 + 0x3d5b5c))(var_66,pOVar23,var_83);
                            var_14 = var_83;
                            var_4 = iStack_338;
                            var_13 = uStack_340;
                            var_33 = pRStack_33c;
                            goto LAB_000ec454;
                          }
LAB_000ec348:
                          var_20 = var_33->calculate_only_;
                        }
                        if ((var_20 & 0xf) != 3) {
                          if ((var_13 == 0) && (var_14 == (type_4 *)0x0)) goto LAB_000ec3f4;
                          var_88 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill +
                                          var_4);
                          if (var_14 < (type_4 *)
                                        ((*(int *)&pOVar23->field_0xec -
                                          (int)pOVar23->free_space_fill_ >> 3) * -0x55555555)) {
                            if (*var_88 != 0) {
                              var_4 = *(int *)(var_31 + 0x3d5afc);
                              var_84 = (type_9 *)0x9;
                              if (*var_88 != -2) goto LAB_000ec0d0;
                            }
                            *var_88 = -2;
                            goto LAB_000ec2b4;
                          }
                          goto LAB_000ec634;
                        }
                        if (var_13 != 4) {
                          var_83 = var_40;
                          var_13 = (*var_85)(var_13,pOVar23);
                          if (var_13 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000ec4c8. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            uVar11 = (*(var_31 + *(int *)(var_17 + var_13 * 4) + 0x3dd2ec))();
                            return (bool)uVar11;
                          }
                          goto switchD_000ec4c8_caseD_3;
                        }
                        var_37 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];
                        if (var_37 == var_82) {
                          if ((type_4 *)
                              ((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                              <= var_40) goto LAB_000ec66c;
                          var_4 = *(int *)(*(int *)&pOVar23->load_address_ + (int)var_40 * 4);
                          var_83 = var_42;
                        }
                        else {
                          var_83 = var_42;
                          var_4 = (*var_37)(pOVar23,var_40);
                        }
                        var_27 = *(type_10 **)(var_31 + 0x3d5c08);
                        *(type_2 *)(var_4 + 0x98) = *(type_2 *)(var_4 + 0x98) & 0x7fffffff | 0x80000000;
                        auStack_350[0] = var_41(var_83,0);
                        (*var_27)(var_34,auStack_350);
                        if (var_83 == (type_4 *)&DAT_00000008) goto LAB_000ec2d4;
                        var_4 = *(int *)&var_34[1].calculate_only_;
                      }
                      else {
LAB_000ec2b4:
                        auStack_350[0] = (type_9)0x0;
                        (**(type_10 **)(var_31 + 0x3d5c08))(var_34,auStack_350);
                        var_4 = *(int *)&var_34[1].calculate_only_;
                      }
                      *(int *)&var_34[1].calculate_only_ = var_4 + 1;
                    }
                    else {
LAB_000ec3f4:
                      auStack_350[0] = (type_9)0x8;
                      (**(type_10 **)(var_31 + 0x3d5c08))(var_34,auStack_350);
                    }
LAB_000ec2d4:
                    var_36 = var_36 + 1;
                    var_10 = var_10 + 0x10;
                    var_37 = var_80;
                  } while (var_80 != var_36);
                }
LAB_000ec25c:
                return var_41(var_37,0);
              }
              if (var_79 == (type_4 *)&DAT_00000004) {
                var_85 = *(type_9 **)(var_31 + 0x3d5bd0);
                var_37 = var_85;
                if (var_80 == (type_9 *)0x0) goto LAB_000ec25c;
                var_36 = *(type_9 **)(var_31 + 0x3d5c08);
                var_84 = (type_9 *)0x0;
                var_82 = (type_9 *)auStack_350;
                var_17 = &DAT_aaaaaaab;
LAB_000ec010:
                if ((var_81 != '\0') &&
                   (var_4 = (**(type_10 **)(var_31 + 0x3d5c0c))(var_78,pOVar23,iStack_2f8),
                   var_4 == 0)) {
LAB_000ec234:
                  auStack_350[0] = (type_9)0x8;
                  (*var_36)(var_34,var_82);
                  var_84 = var_84 + 1;
                  var_10 = var_10 + 0x18;
                  var_37 = var_80;
                  if (var_80 == var_84) goto LAB_000ec25c;
                  goto LAB_000ec010;
                }
                var_13 = *(type_2 *)(var_10 + 8);
                var_14 = (type_4 *)
                          ((((var_13 >> 0x10) << 0x18 | (var_13 >> 0x18) << 0x10) >> 0x10) +
                          ((var_13 & 0xff) << 8 | var_13 >> 8 & 0xff) * 0x10000);
                if (var_77 <= var_14) {
                  auStack_350[0] = (type_9)0x0;
                  (*var_36)(var_34,var_82);
LAB_000ebff4:
                  var_84 = var_84 + 1;
                  *(int *)&var_34[1].calculate_only_ = *(int *)&var_34[1].calculate_only_ + 1;
                  var_10 = var_10 + 0x18;
                  var_37 = var_80;
                  if (var_80 == var_84) goto LAB_000ec25c;
                  goto LAB_000ec010;
                }
                if (var_53 != (type_4 *)0x0) {
                  var_18 = (type_2)(type_12)var_10[0xf];
                  var_4 = (int)var_14 * 0x18;
                  var_33 = var_53 + (int)var_14 * 3;
                  var_13 = (*(type_13 *)&var_33->field_0x6 & 0xff) << 8 |
                          (type_2)(*(type_13 *)&var_33->field_0x6 >> 8);
                  if (var_13 < 0xff00) {
LAB_000ec14c:
                    if (var_13 == 0) goto LAB_000ec074;
                    var_66 = *(int *)(var_31 + 0x3d5afc);
                    if ((type_2)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                        <= var_13) goto LAB_000ec68c;
                    if (*(int *)(*(int *)&pOVar23->load_address_ + var_13 * 4) == 0)
                    goto LAB_000ec234;
                    var_20 = var_33->calculate_only_;
                  }
                  else {
                    if (var_13 == 0xffff) {
                      var_66 = *(int *)&pOVar23->entsize_;
                      var_83 = var_14;
                      iStack_338 = var_4;
                      uStack_340 = var_18;
                      pRStack_33c = var_33;
                      if (var_66 == 0) {
                        var_66 = (*(pOVar23->super_Output_data)._vptr_Output_data[0x1b])(pOVar23);
                        *(int *)&pOVar23->entsize_ = var_66;
                      }
                      var_13 = (**(type_10 **)(var_31 + 0x3d5b5c))(var_66,pOVar23,var_83);
                      var_14 = var_83;
                      var_4 = iStack_338;
                      var_18 = uStack_340;
                      var_33 = pRStack_33c;
                      goto LAB_000ec14c;
                    }
LAB_000ec074:
                    var_20 = var_33->calculate_only_;
                  }
                  if ((var_20 & 0xf) == 3) {
                    var_37 = (pOVar23->super_Output_data)._vptr_Output_data[0x18];
                    if (var_37 == var_85) {
                      if ((type_2)((int)pOVar23->load_address_ - *(int *)&pOVar23->load_address_ >> 2)
                          <= var_13) goto LAB_000ec66c;
                      var_4 = *(int *)(*(int *)&pOVar23->load_address_ + var_13 * 4);
                      var_13 = *(type_2 *)(var_4 + 0x98);
                    }
                    else {
                      var_4 = (*var_37)(pOVar23,var_13);
                      var_13 = *(type_2 *)(var_4 + 0x98);
                    }
                    *(type_2 *)(var_4 + 0x98) = var_13 & 0x7fffffff | 0x80000000;
                    auStack_350[0] = (type_9)0x1;
                    (*var_36)(var_34,var_82);
                  }
                  else {
                    if ((var_18 == 0) && (var_14 == (type_4 *)0x0)) goto LAB_000ec234;
                    var_88 = (int *)((int)&pOVar23->free_space_fill_->_vptr_Output_fill + var_4);
                    if ((type_4 *)
                        ((*(int *)&pOVar23->field_0xec - (int)pOVar23->free_space_fill_ >> 3) *
                        (int)var_17) <= var_14) goto LAB_000ec634;
                    if ((*var_88 != 0) && (*var_88 != -2)) {
                      var_4 = *(int *)(var_31 + 0x3d5afc);
LAB_000ec0d0:
                      (**(type_10 **)(var_31 + 0x3d5adc))
                                (*(int *)(var_31 + 0x3d5328) + 0x4570,0x71f,var_4 + -0x3524);
                    }
                    *var_88 = -2;
                    auStack_350[0] = (type_9)0x0;
                    (*var_36)(var_34,var_82);
                  }
                  goto LAB_000ebff4;
                }
                (**(type_10 **)(var_31 + 0x3d5adc))
                          (*(int *)(var_31 + 0x3d5328) + 0x39d4,0x2e4,
                           *(int *)(var_31 + 0x3d5afc) + -0x359c);
LAB_000ec634:
                (**(type_10 **)(var_31 + 0x3d5adc))
                          (*(int *)(var_31 + 0x3d5328) + 0x4570,0x8e3,
                           *(int *)(var_31 + 0x3d5afc) + -0x3500);
              }
              (**(type_10 **)(var_31 + 0x3d5adc))
                        (*(int *)(var_31 + 0x3d5328) + 0x3588,0x279c,
                         *(int *)(var_31 + 0x3d5afc) + -0x3554);
LAB_000ec66c:
              (**(type_10 **)(var_31 + 0x3d5adc))
                        (*(int *)(var_31 + 0x3d5328) + 0x4570,0x5c8,
                         *(int *)(var_31 + 0x3d5afc) + -0x33a0);
LAB_000ec688:
              var_66 = *(int *)(var_31 + 0x3d5afc);
LAB_000ec68c:
              (**(type_10 **)(var_31 + 0x3d5adc))
                        (*(int *)(var_31 + 0x3d5328) + 0x4570,0x50b,var_66 + -0x34dc);
LAB_000ec6a4:
              (**(type_10 **)(var_31 + 0x3d5adc))
                        (*(int *)(var_31 + 0x3d5328) + 0x39d4,0x2e4,
                         *(int *)(var_31 + 0x3d5afc) + -0x356c);
switchD_000ec4c8_caseD_3:
              var_66 = 0x276;
              var_10 = *(type_10 **)(var_31 + 0x3d5adc);
              var_4 = *(int *)(var_31 + 0x3d5328) + 0x39d4;
              (*var_10)(var_4,0x276,*(int *)(var_31 + 0x3d5afc) + -0x3584);
              if (*(int *)(var_4 + 0x54) == 0) {
                (**(type_10 **)(var_10 + 0x3d5354))
                          (*(int *)(var_10 + 0x3d4ba0) + 0x37c0,0x90,
                           *(int *)(var_10 + 0x3d5374) + -0x4e5c);
              }
              else if (*(int *)(var_4 + 0x14) != 0) {
                var_86 = *(int **)(var_66 + 4);
                var_87 = *(int **)(var_66 + 8);
                var_88 = var_86 + 1;
                if (var_86 == var_87) {
                  (**(type_10 **)(var_10 + 0x3d5488))(var_66,var_87,var_4 + 0x14);
                  var_88 = *(int **)(var_66 + 4);
                  if (var_88 == *(int **)(var_66 + 8)) goto LAB_000ec774;
                }
                else {
                  *var_86 = *(int *)(var_4 + 0x14);
                  *(int **)(var_66 + 4) = var_88;
                  if (var_88 == var_87) {
LAB_000ec774:
                    /* WARNING: Could not recover jumptable at 0x000ec790. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(type_10 **)(var_10 + 0x3d5488))(var_66,var_88,var_4 + 0x54);
                    return (bool)uVar11;
                  }
                }
                *var_88 = *(int *)(var_4 + 0x54);
                *(int **)(var_66 + 4) = var_88 + 1;
                return var_41(var_88,0);
              }
              var_66 = 200;
              var_31 = *(type_10 **)(var_10 + 0x3d5354);
              var_4 = *(int *)(var_10 + 0x3d4ba0) + 0x39f0;
              (*var_31)(var_4,200,*(int *)(var_10 + 0x3d5374) + -0x3258);
              if (*(int *)(var_4 + 0x54) == 0) {
                (**(type_10 **)(var_31 + 0x3d5260))
                          (*(int *)(var_31 + 0x3d4aac) + 0x37c0,0x90,
                           *(int *)(var_31 + 0x3d5280) + -0x3240);
              }
              else if (*(int *)(var_4 + 0x14) != 0) {
                var_86 = *(int **)(var_66 + 4);
                var_87 = *(int **)(var_66 + 8);
                var_88 = var_86 + 1;
                if (var_86 == var_87) {
                  (**(type_10 **)(var_31 + 0x3d5394))(var_66,var_87,var_4 + 0x14);
                  var_88 = *(int **)(var_66 + 4);
                  if (var_88 == *(int **)(var_66 + 8)) goto LAB_000ec868;
                }
                else {
                  *var_86 = *(int *)(var_4 + 0x14);
                  *(int **)(var_66 + 4) = var_88;
                  if (var_88 == var_87) {
LAB_000ec868:
                    /* WARNING: Could not recover jumptable at 0x000ec884. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(type_10 **)(var_31 + 0x3d5394))(var_66,var_88,var_4 + 0x54);
                    return (bool)uVar11;
                  }
                }
                *var_88 = *(int *)(var_4 + 0x54);
                *(int **)(var_66 + 4) = var_88 + 1;
                return var_41(var_88,0);
              }
              var_66 = 200;
              var_10 = *(type_10 **)(var_31 + 0x3d5260);
              var_4 = *(int *)(var_31 + 0x3d4aac) + 0x39f0;
              (*var_10)(var_4,200,*(int *)(var_31 + 0x3d5280) + -0x3258);
              if (*(int *)(var_4 + 0x50) == 0) {
                (**(type_10 **)(var_10 + 0x3d516c))
                          (*(int *)(var_10 + 0x3d49b8) + 0x37c0,0x88,
                           *(int *)(var_10 + 0x3d518c) + -0x4694);
              }
              else if (*(int *)(var_4 + 0x10) != 0) {
                var_86 = *(int **)(var_66 + 4);
                var_87 = *(int **)(var_66 + 8);
                var_88 = var_86 + 1;
                if (var_86 == var_87) {
                  (**(type_10 **)(var_10 + 0x3d52a0))(var_66,var_87,var_4 + 0x10);
                  var_88 = *(int **)(var_66 + 4);
                  if (var_88 == *(int **)(var_66 + 8)) goto LAB_000ec95c;
                }
                else {
                  *var_86 = *(int *)(var_4 + 0x10);
                  *(int **)(var_66 + 4) = var_88;
                  if (var_88 == var_87) {
LAB_000ec95c:
                    /* WARNING: Could not recover jumptable at 0x000ec978. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(type_10 **)(var_10 + 0x3d52a0))(var_66,var_88,var_4 + 0x50);
                    return (bool)uVar11;
                  }
                }
                *var_88 = *(int *)(var_4 + 0x50);
                *(int **)(var_66 + 4) = var_88 + 1;
                return var_41(var_88,0);
              }
              var_66 = 0xb6;
              var_31 = *(type_10 **)(var_10 + 0x3d516c);
              var_4 = *(int *)(var_10 + 0x3d49b8) + 0x39f0;
              (*var_31)(var_4,0xb6,*(int *)(var_10 + 0x3d518c) + -0x3288);
              if (*(int *)(var_4 + 0x50) == 0) {
                (**(type_10 **)(var_31 + 0x3d5078))
                          (*(int *)(var_31 + 0x3d48c4) + 0x37c0,0x88,
                           *(int *)(var_31 + 0x3d5098) + -0x3f34);
              }
              else if (*(int *)(var_4 + 0x10) != 0) {
                var_86 = *(int **)(var_66 + 4);
                var_87 = *(int **)(var_66 + 8);
                var_88 = var_86 + 1;
                if (var_86 == var_87) {
                  (**(type_10 **)(var_31 + 0x3d51ac))(var_66,var_87,var_4 + 0x10);
                  var_88 = *(int **)(var_66 + 4);
                  if (var_88 == *(int **)(var_66 + 8)) goto LAB_000eca50;
                }
                else {
                  *var_86 = *(int *)(var_4 + 0x10);
                  *(int **)(var_66 + 4) = var_88;
                  if (var_88 == var_87) {
LAB_000eca50:
                    /* WARNING: Could not recover jumptable at 0x000eca6c. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(type_10 **)(var_31 + 0x3d51ac))(var_66,var_88,var_4 + 0x50);
                    return (bool)uVar11;
                  }
                }
                *var_88 = *(int *)(var_4 + 0x50);
                *(int **)(var_66 + 4) = var_88 + 1;
                return var_41(var_88,0);
              }
              var_66 = 0xb6;
              var_10 = *(type_10 **)(var_31 + 0x3d5078);
              var_4 = *(int *)(var_31 + 0x3d48c4) + 0x39f0;
              (*var_10)(var_4,0xb6,*(int *)(var_31 + 0x3d5098) + -0x3288);
              if (*(int *)(var_4 + 0x50) == 0) {
                (**(type_10 **)(var_10 + 0x3d4f84))
                          (*(int *)(var_10 + 0x3d47d0) + 0x37c0,0x88,
                           *(int *)(var_10 + 0x3d4fa4) + -0x3270);
              }
              else if (*(int *)(var_4 + 0x10) != 0) {
                var_86 = *(int **)(var_66 + 4);
                var_87 = *(int **)(var_66 + 8);
                var_88 = var_86 + 1;
                if (var_86 == var_87) {
                  (**(type_10 **)(var_10 + 0x3d50b8))(var_66,var_87,var_4 + 0x10);
                  var_88 = *(int **)(var_66 + 4);
                  if (var_88 == *(int **)(var_66 + 8)) goto LAB_000ecb44;
                }
                else {
                  *var_86 = *(int *)(var_4 + 0x10);
                  *(int **)(var_66 + 4) = var_88;
                  if (var_88 == var_87) {
LAB_000ecb44:
                    /* WARNING: Could not recover jumptable at 0x000ecb60. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(type_10 **)(var_10 + 0x3d50b8))(var_66,var_88,var_4 + 0x50);
                    return (bool)uVar11;
                  }
                }
                *var_88 = *(int *)(var_4 + 0x50);
                *(int **)(var_66 + 4) = var_88 + 1;
                return var_41(var_88,0);
              }
              var_66 = 0xb6;
              var_31 = *(type_10 **)(var_10 + 0x3d4f84);
              var_4 = *(int *)(var_10 + 0x3d47d0) + 0x39f0;
              (*var_31)(var_4,0xb6,*(int *)(var_10 + 0x3d4fa4) + -0x3288);
              if (*(int *)(var_4 + 0x50) == 0) {
                (**(type_10 **)(var_31 + 0x3d4e90))
                          (*(int *)(var_31 + 0x3d46dc) + 0x37c0,0x88,
                           *(int *)(var_31 + 0x3d4eb0) + -0x4e74);
              }
              else if (*(int *)(var_4 + 0x10) != 0) {
                var_86 = *(int **)(var_66 + 4);
                var_87 = *(int **)(var_66 + 8);
                var_88 = var_86 + 1;
                if (var_86 == var_87) {
                  (**(type_10 **)(var_31 + 0x3d4fc4))(var_66,var_87,var_4 + 0x10);
                  var_88 = *(int **)(var_66 + 4);
                  if (var_88 == *(int **)(var_66 + 8)) goto LAB_000ecc38;
                }
                else {
                  *var_86 = *(int *)(var_4 + 0x10);
                  *(int **)(var_66 + 4) = var_88;
                  if (var_88 == var_87) {
LAB_000ecc38:
                    /* WARNING: Could not recover jumptable at 0x000ecc54. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(type_10 **)(var_31 + 0x3d4fc4))(var_66,var_88,var_4 + 0x50);
                    return (bool)uVar11;
                  }
                }
                *var_88 = *(int *)(var_4 + 0x50);
                *(int **)(var_66 + 4) = var_88 + 1;
                return var_41(var_88,0);
              }
              var_66 = 0xb6;
              var_10 = *(type_10 **)(var_31 + 0x3d4e90);
              var_4 = *(int *)(var_31 + 0x3d46dc) + 0x39f0;
              (*var_10)(var_4,0xb6,*(int *)(var_31 + 0x3d4eb0) + -0x3288);
              if (*(int *)(var_4 + 0x54) == 0) {
                (**(type_10 **)(var_10 + 0x3d4d9c))
                          (*(int *)(var_10 + 0x3d45e8) + 0x37c0,0x90,
                           *(int *)(var_10 + 0x3d4dbc) + -0x3f1c);
              }
              else if (*(int *)(var_4 + 0x14) != 0) {
                var_86 = *(int **)(var_66 + 4);
                var_87 = *(int **)(var_66 + 8);
                var_88 = var_86 + 1;
                if (var_86 == var_87) {
                  (**(type_10 **)(var_10 + 0x3d4ed0))(var_66,var_87,var_4 + 0x14);
                  var_88 = *(int **)(var_66 + 4);
                  if (var_88 == *(int **)(var_66 + 8)) goto LAB_000ecd2c;
                }
                else {
                  *var_86 = *(int *)(var_4 + 0x14);
                  *(int **)(var_66 + 4) = var_88;
                  if (var_88 == var_87) {
LAB_000ecd2c:
                    /* WARNING: Could not recover jumptable at 0x000ecd48. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(type_10 **)(var_10 + 0x3d4ed0))(var_66,var_88,var_4 + 0x54);
                    return (bool)uVar11;
                  }
                }
                *var_88 = *(int *)(var_4 + 0x54);
                *(int **)(var_66 + 4) = var_88 + 1;
                return var_41(var_88,0);
              }
              var_66 = 200;
              var_31 = *(type_10 **)(var_10 + 0x3d4d9c);
              var_4 = *(int *)(var_10 + 0x3d45e8) + 0x39f0;
              (*var_31)(var_4,200,*(int *)(var_10 + 0x3d4dbc) + -0x3258);
              if (*(int *)(var_4 + 0x54) == 0) {
                (**(type_10 **)(var_31 + 0x3d4ca8))
                          (*(int *)(var_31 + 0x3d44f4) + 0x37c0,0x90,
                           *(int *)(var_31 + 0x3d4cc8) + -0x467c);
              }
              else if (*(int *)(var_4 + 0x14) != 0) {
                var_86 = *(int **)(var_66 + 4);
                var_87 = *(int **)(var_66 + 8);
                var_88 = var_86 + 1;
                if (var_86 == var_87) {
                  (**(type_10 **)(var_31 + 0x3d4ddc))(var_66,var_87,var_4 + 0x14);
                  var_88 = *(int **)(var_66 + 4);
                  if (var_88 == *(int **)(var_66 + 8)) goto LAB_000ece20;
                }
                else {
                  *var_86 = *(int *)(var_4 + 0x14);
                  *(int **)(var_66 + 4) = var_88;
                  if (var_88 == var_87) {
LAB_000ece20:
                    /* WARNING: Could not recover jumptable at 0x000ece3c. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                    uVar11 = (**(type_10 **)(var_31 + 0x3d4ddc))(var_66,var_88,var_4 + 0x54);
                    return (bool)uVar11;
                  }
                }
                *var_88 = *(int *)(var_4 + 0x54);
                *(int **)(var_66 + 4) = var_88 + 1;
                return var_41(var_88,0);
              }
              var_4 = 200;
              var_10 = *(type_10 **)(var_31 + 0x3d4ca8);
              var_88 = (int *)(*(int *)(var_31 + 0x3d44f4) + 0x39f0);
              (*var_10)(var_88,200,*(int *)(var_31 + 0x3d4cc8) + -0x3258);
              *var_88 = (int)(var_88 + 2);
              if (var_4 != 0) {
                var_66 = (**(type_10 **)(var_10 + 0x3d8d20))(var_4);
                    /* WARNING: Could not recover jumptable at 0x000ecedc. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                uVar11 = (**(type_10 **)(var_10 + 0x3d4cec))(var_88,var_4,var_4 + var_66,0);
                return (bool)uVar11;
              }
                    /* WARNING: Could not recover jumptable at 0x000ecf00. Too many branches */
                    /* WARNING: Treating indirect jump as call */
              uVar11 = (**(type_10 **)(var_10 + 0x3d4cec))(var_88);
              return (bool)uVar11;
            }
            var_26 = *(type_4 **)(var_11 + 0x3d8b48);
            var_14 = var_2;
            if (var_2 != (type_4 *)0x0) {
              var_90 = (type_4 *)0x0;
              var_89 = *(type_9 **)(var_11 + 0x3d8b10);
              unaff_s7 = &var_23;
              do {
                while (var_13 == 0) {
LAB_000e90cc:
                  var_27 = var_19;
                  var_14 = (type_4 *)((type_2)var_25[1] >> 8);
                  if (var_14 < var_15) {
                    var_62 = (type_4 *)((int)var_14 * 0x10);
                    if (var_16 == 0) {
                      (**(type_10 **)(var_19 + -0x7810))
                                (*(int *)(var_19 + -0x7fc4) + 0x39d4,0x2e4,
                                 *(int *)(var_19 + -0x77f0) + -0x5080);
LAB_000e95bc:
                      var_4 = *(int *)(var_27 + -0x77f0);
LAB_000e95c0:
                      (**(type_10 **)(var_27 + -0x7810))
                                (*(int *)(var_27 + -0x7fc4) + 0x4570,0x8e3,var_4 + -0x5068);
LAB_000e95d8:
                      (**(type_10 **)(var_27 + -0x7810))
                                (*(int *)(var_27 + -0x7fc4) + 0x4570,0x5c8,
                                 *(int *)(var_27 + -0x77f0) + -0x33a0);
                      goto LAB_000e95f4;
                    }
                    var_17 = (type_5 *)((int)&var_62->calculated_value_ + var_16);
                    var_18 = (type_2)*(type_13 *)(var_17 + 0xe);
                    if (var_18 < 0xff00) {
LAB_000e92ac:
                      if (var_18 == 0) goto LAB_000e910c;
                      var_4 = *(int *)(var_19 + -0x77f0);
                      var_27 = var_19;
                      if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= var_18) goto LAB_000e962c;
                      if (*(int *)(*(int *)&pOVar22->load_address_ + var_18 * 4) == 0)
                      goto LAB_000e91a4;
                      var_20 = var_17[0xc];
                    }
                    else {
                      if (var_18 == 0xffff) {
                        var_4 = *(int *)&pOVar22->entsize_;
                        var_21 = var_14;
                        pRStack_84 = var_62;
                        puStack_80 = var_17;
                        if (var_4 == 0) {
                          var_4 = (*(pOVar22->super_Output_data)._vptr_Output_data[0x1b])(pOVar22);
                          *(int *)&pOVar22->entsize_ = var_4;
                        }
                        var_18 = (**(type_10 **)(var_19 + -0x7790))(var_4,pOVar22,var_21);
                        var_14 = var_21;
                        var_62 = pRStack_84;
                        var_17 = puStack_80;
                        goto LAB_000e92ac;
                      }
LAB_000e910c:
                      var_20 = var_17[0xc];
                    }
                    var_27 = var_19;
                    if ((var_20 & 0xf) != 3) {
                      var_4 = *(int *)(var_19 + -0x77f0);
                      if (var_14 < (type_4 *)
                                    (*(int *)&pOVar22->field_0xec - (int)pOVar22->free_space_fill_
                                    >> 4)) {
                        var_88 = (int *)((int)&var_62->calculated_value_ +
                                        (int)&pOVar22->free_space_fill_->_vptr_Output_fill);
                        if ((*var_88 != 0) && (*var_88 != -2)) {
                          var_66 = *(int *)(var_19 + -0x77f0);
LAB_000e9238:
                          var_88 = (int *)(*(int *)(var_19 + -0x7fc4) + 0x4570);
                          (**(type_10 **)(var_19 + -0x7810))(var_88,0x71f,var_66 + -0x48c0);
                        }
                        *var_88 = -2;
                        var_23 = var_23 & 0xffffff;
                        (*(type_10 *)var_26)(var_24,unaff_s7);
                        goto LAB_000e90a8;
                      }
                      goto LAB_000e95c0;
                    }
                    var_37 = (pOVar22->super_Output_data)._vptr_Output_data[0x18];
                    if (var_37 == var_89) {
                      if ((type_2)((int)pOVar22->load_address_ - *(int *)&pOVar22->load_address_ >> 2)
                          <= var_18) goto LAB_000e95d8;
                      var_4 = *(int *)(*(int *)&pOVar22->load_address_ + var_18 * 4);
                      var_18 = *(type_2 *)(var_4 + 0x98);
                    }
                    else {
                      var_4 = (*var_37)(pOVar22,var_18);
                      var_18 = *(type_2 *)(var_4 + 0x98);
                    }
                    *(type_2 *)(var_4 + 0x98) = var_18 & 0x7fffffff | 0x80000000;
                    var_23 = var_22(1,var_23._1_3_);
                    (*(type_10 *)var_26)(var_24,unaff_s7);
                  }
                  else {
                    var_23 = var_23 & 0xffffff;
                    (*(type_10 *)var_26)(var_24,unaff_s7);
                  }
LAB_000e90a8:
                  var_90 = (type_4 *)((int)&var_90->calculated_value_ + 1);
                  *(int *)(var_24 + 0xc) = *(int *)(var_24 + 0xc) + 1;
                  var_25 = var_25 + 3;
                  var_14 = var_2;
                  if (var_2 == var_90) goto LAB_000e91d0;
                }
                var_29 = (type_4 *)*var_25;
                uStack_a0 = 0;
                var_4 = (**(type_10 **)(var_19 + -0x76e0))
                                  (output_section,pOVar22,var_10 + 0x3e03cc);
                if (var_4 != 0) goto LAB_000e90cc;
LAB_000e91a4:
                var_23 = var_22(8,var_23._1_3_);
                (*(type_10 *)var_26)(var_24,unaff_s7);
                var_90 = (type_4 *)((int)&var_90->calculated_value_ + 1);
                var_25 = var_25 + 3;
                var_14 = var_2;
              } while (var_2 != var_90);
            }
          }
LAB_000e91d0:
          return var_41(var_14,0);
        }
        if (((*(char *)(*(int *)(**(int **)(var_10 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||
            ((*(type_2 *)&var_9->field_0x28 & 0xe000) != 0)) ||
           (-1 < (int)((var_9->u1_).output_segment)->output_lists_[3].
                      super__Vector_base<var_91::Output_data*,var_92::allocator<var_91::Output_data*>var_93>.
                      _M_impl._M_end_of_storage)) {
          var_4 = (int)(pOVar21->super_Output_data).data_size_;
        }
        else {
          if ((*(type_2 *)&var_9->field_0x28 & 0x70000000) != 0x20000000) {
            return true;
          }
          var_4 = (int)(pOVar21->super_Output_data).data_size_;
        }
        if (var_4 == 0) {
          var_95 = &var_9->got_offsets_;
        }
        else {
          var_95 = &var_9->got_offsets_;
          if (*(int *)(var_4 + 0x8c) != 0) {
            var_13 = var_9[1].got_offsets_.got_offset_;
LAB_000e8f24:
            if (var_13 == 0xffffffff) {
              return true;
            }
            bVar10 = var_94(var_9,var_9->dynsym_index_ != 0,false);
            return bVar10;
          }
        }
        do {
          if (var_95->got_type_ == 0) {
            var_13 = var_95->got_offset_;
            goto LAB_000e8f24;
          }
          var_95 = var_95->got_next_;
        } while (var_95 != (type_3 *)0x0);
      }
      return true;
    }
    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||
        ((var_2[5].calculated_value_ & 0xe000) != 0)) ||
       (-1 < *(int *)(var_2[1].calculated_value_ + 0x2c))) {
      var_4 = (int)(output_section->super_Output_data).data_size_;
    }
    else {
      if ((var_2[5].calculated_value_ & 0x70000000) != 0x20000000) {
        return true;
      }
      var_4 = (int)(output_section->super_Output_data).data_size_;
    }
    if (var_4 == 0) {
      var_97 = &var_2[3].calculate_only_;
    }
    else {
      var_97 = &var_2[3].calculate_only_;
      if (*(int *)(var_4 + 0x8c) != 0) {
        var_96 = var_2[10].calculated_value_;
LAB_000e8d84:
        if (var_96 == 0xffffffff) {
          return true;
        }
        bVar10 = var_94((type_6 *)var_2,*(int *)&var_2[2].calculate_only_ != 0,false);
        return bVar10;
      }
    }
    do {
      if (*(int *)var_97 == 0) {
        var_96 = *(type_1 *)(var_97 + 4);
        goto LAB_000e8d84;
      }
      var_97 = *(bool **)(var_97 + 8);
    } while (var_97 != (bool *)0x0);
  }
  PTR_do_gold_unreachable_004c1a30 = var_10;
  return true;
}


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

code * MASKED(code *param_1,int param_2,int param_3,int *param_4)

{
  code cVar1;
  int iVar2;
  code *pcVar3;
  code *pcVar4;
  int *piVar5;
  uint uVar6;
  int *piVar7;
  undefined *puVar8;
  undefined *puVar9;
  uint uVar10;
  int iVar11;
  int iVar12;
  int *piVar13;
  code *pcVar14;
  code *pcVar15;
  code *pcVar16;
  code *unaff_s2;
  code *unaff_s5;
  uint uVar17;
  uint *puVar18;
  uint *unaff_s7;
  uint *puVar19;
  code *pcVar20;
  code *pcVar21;
  code *pcVar22;
  code *unaff_s8;
  code *pcVar23;
  code *pcVar24;
  code *pcVar25;
  code *pcVar26;
  undefined1 auStack_288 [8];
  code *pcStack_280;
  code *pcStack_27c;
  uint uStack_278;
  code *pcStack_274;
  int iStack_270;
  uint uStack_268;
  code *pcStack_264;
  code *pcStack_260;
  code *pcStack_25c;
  int *piStack_258;
  code *pcStack_254;
  uint *puStack_250;
  uint uStack_24c;
  code *pcStack_248;
  code *pcStack_244;
  undefined4 uStack_230;
  code *pcStack_22c;
  code *pcStack_228;
  code *pcStack_224;
  uint uStack_220;
  char cStack_219;
  code *pcStack_218;
  code *pcStack_214;
  code *pcStack_210;
  int iStack_20c;
  code *pcStack_208;
  code *pcStack_204;
  code *pcStack_200;
  code *pcStack_1fc;
  int *piStack_1f8;
  code *pcStack_1f4;
  uint *puStack_1f0;
  uint *puStack_1ec;
  code *pcStack_1e8;
  code *pcStack_1e4;
  undefined4 uStack_1d0;
  int iStack_1cc;
  code *pcStack_1c8;
  code *pcStack_1c4;
  uint uStack_1c0;
  byte bStack_1b9;
  code *pcStack_1b8;
  code *pcStack_1b4;
  code *pcStack_1b0;
  int iStack_1ac;
  code *pcStack_1a8;
  uint uStack_1a0;
  code *pcStack_19c;
  code *pcStack_198;
  code *pcStack_194;
  int *piStack_190;
  code *pcStack_18c;
  uint uStack_188;
  uint *puStack_184;
  code *pcStack_180;
  code *pcStack_17c;
  undefined4 uStack_168;
  code *pcStack_164;
  code *pcStack_160;
  code *pcStack_15c;
  uint uStack_158;
  byte bStack_151;
  code *pcStack_150;
  code *pcStack_14c;
  code *pcStack_148;
  code *pcStack_144;
  code *pcStack_140;
  code *pcStack_13c;
  code *pcStack_138;
  code *pcStack_134;
  int *piStack_130;
  code *pcStack_12c;
  uint uStack_128;
  uint *puStack_124;
  code *pcStack_120;
  code *pcStack_11c;
  undefined4 uStack_108;
  int iStack_104;
  code *pcStack_100;
  code *pcStack_fc;
  uint uStack_f8;
  byte bStack_f1;
  code *pcStack_f0;
  code *pcStack_ec;
  code *pcStack_e8;
  int iStack_e4;
  code *pcStack_e0;
  undefined4 *puStack_d4;
  code *pcStack_d0;
  int *piStack_c8;
  code *pcStack_c4;
  uint uStack_c0;
  uint *puStack_bc;
  code *pcStack_b8;
  code *pcStack_b4;
  undefined4 uStack_a0;
  code *pcStack_9c;
  code *pcStack_98;
  code *pcStack_94;
  uint uStack_90;
  byte bStack_89;
  code *pcStack_88;
  code *pcStack_84;
  code *pcStack_80;
  code *pcStack_7c;
  undefined *puStack_78;
  int *piStack_74;
  int iStack_3c;
  undefined4 *puStack_38;
  code *pcStack_28;
  int iStack_24;
  int iStack_20;
  
  if (((*(uint *)(param_3 + 0x5c) & 2) == 0) || (param_1 == (code *)0x0)) {
    return (code *)0x1;
  }
  piVar5 = param_4;
  if (param_2 - 1U < 0xf9) {
    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)
                      (param_1,(int)(char)PTR_s__s_004c1a50[param_2 + -0x56e9]);
    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;
  }
  else {
    iVar2 = (*(code *)PTR_needs_dynamic_reloc_004c1b58)(param_1,0);
    pcVar4 = (code *)PTR_do_gold_unreachable_004c1a30;
  }
  if (iVar2 != 0) {
    PTR_do_gold_unreachable_004c1a30 = pcVar4;
    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {
      iVar2 = 0x5c;
      puVar9 = PTR_s__s_004c1a50 + -0x33c8;
      pcVar3 = FUN_000e8e74;
      puVar8 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;
      (*pcVar4)();
      if (((*(uint *)(puVar9 + 0x5c) & 2) == 0) || (puVar8 == (undefined *)0x0)) {
        return (code *)0x1;
      }
      piVar7 = piVar5;
      if (iVar2 - 1U < 0xf9) {
        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();
      }
      else {
        iVar2 = (**(code **)(pcVar4 + 0x3d8ce4))();
      }
      if (iVar2 != 0) {
        if (*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) == 0) {
          pcVar20 = *(code **)(pcVar4 + 0x3d8bbc);
          (*pcVar20)(*(int *)(pcVar4 + 0x3d8408) + -0x9b8,0x5c,*(int *)(pcVar4 + 0x3d8bdc) + -0x33c8
                    );
          pcVar22 = pcVar20 + 0x3e022c;
          uVar17 = (uint)pcVar3 & 0xff;
          piVar13 = piVar7;
          pcStack_98 = pcVar22;
          puStack_78 = puVar8;
          piStack_74 = piVar5;
          if (iStack_3c == 9) {
            pcStack_88 = *(code **)(pcVar20 + 0x3d8b10);
            pcVar3 = pcStack_88;
            if (param_1 != (code *)0x0) {
              unaff_s2 = (code *)0x0;
              unaff_s5 = *(code **)(pcVar20 + 0x3d8b48);
              unaff_s8 = (code *)&uStack_90;
              unaff_s7 = (uint *)0xff00;
              do {
                if (uVar17 == 0) {
LAB_000e9358:
                  pcVar3 = (code *)((uint)puStack_38[1] >> 8);
                  if (pcVar3 < pcStack_28) {
                    pcVar20 = (code *)((int)pcVar3 * 0x10);
                    pcVar22 = pcStack_98;
                    if (iStack_24 == 0) goto LAB_000e9610;
                    pcVar15 = pcVar20 + iStack_24;
                    uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);
                    if (uVar6 < 0xff00) {
LAB_000e948c:
                      if (uVar6 == 0) goto LAB_000e9394;
                      iVar2 = *(int *)(pcStack_98 + -0x77f0);
                      pcVar22 = pcStack_98;
                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;
                      if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e9434;
                      cVar1 = pcVar15[0xc];
                    }
                    else {
                      if (uVar6 == 0xffff) {
                        iVar2 = piVar7[0xc];
                        pcStack_84 = pcVar3;
                        pcStack_7c = pcVar15;
                        pcStack_80 = pcVar20;
                        if (iVar2 == 0) {
                          iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);
                          piVar7[0xc] = iVar2;
                        }
                        uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_84);
                        pcVar3 = pcStack_84;
                        pcVar15 = pcStack_7c;
                        pcVar20 = pcStack_80;
                        goto LAB_000e948c;
                      }
LAB_000e9394:
                      cVar1 = pcVar15[0xc];
                    }
                    pcVar22 = pcStack_98;
                    if (((byte)cVar1 & 0xf) == 3) {
                      if (*(code **)(*piVar7 + 0x60) == pcStack_88) {
                        if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;
                        iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);
                        uVar6 = *(uint *)(iVar2 + 0x98);
                      }
                      else {
                        iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);
                        uVar6 = *(uint *)(iVar2 + 0x98);
                      }
                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                      uStack_90 = CONCAT13(2,uStack_90._1_3_);
                      (*unaff_s5)(iStack_20,unaff_s8);
                    }
                    else {
                      if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar3) goto LAB_000e95bc;
                      iVar2 = *(int *)(pcVar20 + piVar7[0x3a]);
                      if ((iVar2 != 0) && (iVar11 = *(int *)(pcStack_98 + -0x77f0), iVar2 != -2))
                      goto LAB_000e9238;
                      *(int *)(pcVar20 + piVar7[0x3a]) = -2;
                      uStack_90 = uStack_90 & 0xffffff;
                      (*unaff_s5)(iStack_20,unaff_s8);
                    }
                  }
                  else {
                    uStack_90 = uStack_90 & 0xffffff;
                    (*unaff_s5)(iStack_20,unaff_s8);
                  }
                  *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;
                }
                else {
                  pcStack_9c = (code *)*puStack_38;
                  uStack_a0 = 0;
                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);
                  if (iVar2 != 0) goto LAB_000e9358;
LAB_000e9434:
                  uStack_90 = CONCAT13(8,uStack_90._1_3_);
                  (*unaff_s5)(iStack_20,unaff_s8);
                }
                unaff_s2 = unaff_s2 + 1;
                puStack_38 = puStack_38 + 2;
                pcVar3 = param_1;
              } while (param_1 != unaff_s2);
            }
          }
          else {
            if (iStack_3c != 4) {
LAB_000e95f4:
              (**(code **)(pcVar22 + -0x7810))
                        (*(int *)(pcVar22 + -0x7fc4) + 0x3588,0x27da,
                         *(int *)(pcVar22 + -0x77f0) + -0x502c);
LAB_000e9610:
              iVar2 = *(int *)(pcVar22 + -0x77f0) + -0x5044;
              (**(code **)(pcVar22 + -0x7810))(*(int *)(pcVar22 + -0x7fc4) + 0x39d4,0x2e4,iVar2);
LAB_000e962c:
              pcVar21 = *(code **)(pcVar22 + -0x7810);
              pcVar24 = FUN_000e9644;
              (*pcVar21)(*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x50b,iVar2 + -0x34dc);
              pcVar20 = pcStack_80;
              pcVar22 = pcStack_84;
              pcVar3 = pcStack_9c;
              pcVar4 = pcVar21 + 0x3dfbfc;
              uVar6 = (uint)bStack_89;
              piVar5 = piVar13;
              pcVar15 = pcStack_98;
              pcStack_100 = pcVar4;
              puStack_d4 = puStack_38;
              pcStack_d0 = unaff_s2;
              piStack_c8 = piVar7;
              pcStack_c4 = unaff_s5;
              uStack_c0 = uVar17;
              puStack_bc = unaff_s7;
              pcStack_b8 = unaff_s8;
              pcStack_b4 = pcVar24;
              if (pcStack_9c == (code *)0x9) {
                pcVar4 = *(code **)(pcVar21 + 0x3d8408);
                if (pcStack_94 != (code *)0x0) {
                  pcVar24 = (code *)0x0;
                  pcVar23 = *(code **)(pcVar21 + 0x3d84e0);
                  pcStack_f0 = *(code **)(pcVar21 + 0x3d8408) + 0x1864;
                  puVar19 = (uint *)(*(int *)(pcVar21 + 0x3d7c38) + 0x5448);
                  do {
                    if (uVar6 == 0) {
LAB_000e99a8:
                      pcVar21 = *(code **)(pcVar15 + 4);
                      pcVar14 = (code *)((uint)pcVar21 >> 8);
                      if (pcVar14 < pcStack_88) {
                        iVar2 = (int)pcVar14 * 0x10;
                        pcVar4 = pcStack_100;
                        if (pcVar22 == (code *)0x0) goto LAB_000e9d24;
                        pcVar16 = pcVar22 + iVar2;
                        pcVar25 = (code *)(uint)*(ushort *)(pcVar16 + 0xe);
                        if (pcVar25 < (code *)0xff00) {
LAB_000e9ad8:
                          if (pcVar25 == (code *)0x0) goto LAB_000e99e8;
                          pcVar4 = pcStack_100;
                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)
                          goto LAB_000e9d08;
                          if (*(int *)(piVar13[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000e9a0c;
                          cVar1 = pcVar16[0xc];
                        }
                        else {
                          if (pcVar25 == (code *)0xffff) {
                            iVar11 = piVar13[0xc];
                            pcStack_ec = pcVar21;
                            pcStack_e8 = pcVar14;
                            iStack_e4 = iVar2;
                            pcStack_e0 = pcVar16;
                            if (iVar11 == 0) {
                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13,&uStack_f8);
                              piVar13[0xc] = iVar11;
                            }
                            uVar17 = (uint)pcStack_ec;
                            pcStack_ec = pcStack_e8;
                            pcVar4 = pcStack_e8;
                            pcStack_e8 = (code *)uVar17;
                            pcVar25 = (code *)(**(code **)(pcStack_100 + -0x7790))
                                                        (iVar11,piVar13,pcVar4);
                            pcVar21 = pcStack_e8;
                            pcVar14 = pcStack_ec;
                            iVar2 = iStack_e4;
                            pcVar16 = pcStack_e0;
                            goto LAB_000e9ad8;
                          }
LAB_000e99e8:
                          cVar1 = pcVar16[0xc];
                        }
                        uVar17 = (uint)pcVar21 & 0xff;
                        pcVar4 = pcStack_100;
                        if (((byte)cVar1 & 0xf) != 3) {
                          if (pcVar14 == (code *)0x0 && uVar17 == 0) goto LAB_000e9a0c;
                          piVar7 = (int *)(piVar13[0x3a] + iVar2);
                          if (pcVar14 < (code *)(piVar13[0x3b] - piVar13[0x3a] >> 4)) {
                            iVar2 = *piVar7;
                            if (iVar2 != 0) {
                              uVar17 = *(uint *)(pcStack_100 + -0x77f0);
                              pcVar4 = (code *)0x9;
                              if (iVar2 != -2) goto LAB_000e981c;
                            }
                            *piVar7 = -2;
                            goto LAB_000e9970;
                          }
                          goto LAB_000e9cb4;
                        }
                        if (uVar17 != 4) {
                          pcStack_ec = pcVar25;
                          uVar17 = (*pcStack_f0)(uVar17,piVar13);
                          pcVar4 = pcStack_100;
                          if (uVar17 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000e9b48. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            pcVar4 = (code *)(*(pcStack_100 + puVar19[uVar17]))();
                            return pcVar4;
                          }
                          goto switchD_000e9b48_caseD_3;
                        }
                        if (*(code **)(*piVar13 + 0x60) == pcVar23) {
                          if ((code *)(piVar13[0xf] - piVar13[0xe] >> 2) <= pcVar25)
                          goto LAB_000e9cec;
                          iVar2 = *(int *)(piVar13[0xe] + (int)pcVar25 * 4);
                          pcStack_ec = pcVar3;
                        }
                        else {
                          pcStack_ec = pcVar3;
                          iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,pcVar25);
                        }
                        pcVar4 = *(code **)(pcStack_100 + -0x76e4);
                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;
                        uStack_f8 = CONCAT13((char)pcStack_ec,uStack_f8._1_3_);
                        (*pcVar4)(pcVar20,&uStack_f8);
                        if (pcStack_ec == (code *)&DAT_00000008) goto LAB_000e9990;
                        iVar2 = *(int *)(pcVar20 + 0xc);
                      }
                      else {
LAB_000e9970:
                        uStack_f8 = uStack_f8 & 0xffffff;
                        (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);
                        iVar2 = *(int *)(pcVar20 + 0xc);
                      }
                      *(int *)(pcVar20 + 0xc) = iVar2 + 1;
                    }
                    else {
                      iStack_104 = *(int *)pcVar15;
                      uStack_108 = 0;
                      iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);
                      if (iVar2 != 0) goto LAB_000e99a8;
LAB_000e9a0c:
                      uStack_f8 = CONCAT13(8,uStack_f8._1_3_);
                      (**(code **)(pcStack_100 + -0x76e4))(pcVar20,&uStack_f8);
                    }
LAB_000e9990:
                    pcVar24 = pcVar24 + 1;
                    pcVar15 = pcVar15 + 8;
                    pcVar4 = pcStack_94;
                  } while (pcStack_94 != pcVar24);
                }
                return pcVar4;
              }
              pcVar24 = unaff_s2;
              puVar19 = unaff_s7;
              pcVar23 = unaff_s8;
              if (pcStack_9c == (code *)&DAT_00000004) {
                pcStack_f0 = *(code **)(pcVar21 + 0x3d84e0);
                if (pcStack_94 == (code *)0x0) {
                  return pcStack_f0;
                }
                pcVar3 = (code *)0x0;
                pcVar24 = *(code **)(pcVar21 + 0x3d8518);
                pcVar23 = (code *)&DAT_00000008;
                puVar19 = &uStack_f8;
LAB_000e96fc:
                while (uVar6 != 0) {
                  iStack_104 = *(int *)pcVar15;
                  uStack_108 = 0;
                  iVar2 = (**(code **)(pcStack_100 + -0x76e0))(uStack_90,piVar13,uStack_a0);
                  if (iVar2 != 0) break;
LAB_000e9768:
                  uStack_f8 = CONCAT13((char)pcVar23,uStack_f8._1_3_);
                  (*pcVar24)(pcVar20,puVar19);
                  pcVar3 = pcVar3 + 1;
                  pcVar15 = pcVar15 + 0xc;
                  if (pcStack_94 == pcVar3) {
                    return pcStack_94;
                  }
                }
                pcVar4 = pcStack_100;
                pcVar14 = *(code **)(pcVar15 + 4);
                pcVar21 = (code *)((uint)pcVar14 >> 8);
                if (pcStack_88 <= pcVar21) {
                  uStack_f8 = uStack_f8 & 0xffffff;
                  (*pcVar24)(pcVar20,puVar19);
LAB_000e96e0:
                  pcVar3 = pcVar3 + 1;
                  *(int *)(pcVar20 + 0xc) = *(int *)(pcVar20 + 0xc) + 1;
                  pcVar15 = pcVar15 + 0xc;
                  if (pcStack_94 == pcVar3) {
                    return pcStack_94;
                  }
                  goto LAB_000e96fc;
                }
                iVar2 = (int)pcVar21 * 0x10;
                if (pcVar22 != (code *)0x0) {
                  pcVar16 = pcVar22 + iVar2;
                  uVar17 = (uint)*(ushort *)(pcVar16 + 0xe);
                  if (uVar17 < 0xff00) {
LAB_000e9898:
                    if (uVar17 == 0) goto LAB_000e9744;
                    uVar10 = *(uint *)(pcStack_100 + -0x77f0);
                    pcVar4 = pcStack_100;
                    if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9d0c;
                    if (*(int *)(piVar13[0xe] + uVar17 * 4) == 0) goto LAB_000e9768;
                    cVar1 = pcVar16[0xc];
                  }
                  else {
                    if (uVar17 == 0xffff) {
                      iVar11 = piVar13[0xc];
                      pcStack_e8 = pcVar21;
                      pcStack_ec = pcVar14;
                      iStack_e4 = iVar2;
                      pcStack_e0 = pcVar16;
                      if (iVar11 == 0) {
                        iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);
                        piVar13[0xc] = iVar11;
                      }
                      uVar17 = (uint)pcStack_ec;
                      pcStack_ec = pcStack_e8;
                      pcVar4 = pcStack_e8;
                      pcStack_e8 = (code *)uVar17;
                      uVar17 = (**(code **)(pcStack_100 + -0x7790))(iVar11,piVar13,pcVar4);
                      pcVar21 = pcStack_ec;
                      pcVar14 = pcStack_e8;
                      iVar2 = iStack_e4;
                      pcVar16 = pcStack_e0;
                      goto LAB_000e9898;
                    }
LAB_000e9744:
                    cVar1 = pcVar16[0xc];
                  }
                  pcVar4 = pcStack_100;
                  if (((byte)cVar1 & 0xf) == 3) {
                    if (*(code **)(*piVar13 + 0x60) == pcStack_f0) {
                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar17) goto LAB_000e9cec;
                      iVar2 = *(int *)(piVar13[0xe] + uVar17 * 4);
                      uVar17 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar17);
                      uVar17 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;
                    uStack_f8 = CONCAT13(1,uStack_f8._1_3_);
                    (*pcVar24)(pcVar20,puVar19);
                  }
                  else {
                    if (((uint)pcVar14 & 0xff) == 0 && pcVar21 == (code *)0x0) goto LAB_000e9768;
                    pcVar16 = (code *)(piVar13[0x3a] + iVar2);
                    if ((code *)(piVar13[0x3b] - piVar13[0x3a] >> 4) <= pcVar21) goto LAB_000e9cb4;
                    if ((*(int *)pcVar16 != 0) && (*(int *)pcVar16 != -2)) {
                      uVar17 = *(uint *)(pcStack_100 + -0x77f0);
                      pcVar4 = pcVar3;
LAB_000e981c:
                      (**(code **)(pcStack_100 + -0x7810))
                                (*(uint *)(pcStack_100 + -0x7fc4) + 0x4570,0x71f,uVar17 - 0x48c0);
                      pcVar3 = pcVar4;
                    }
                    *(int *)pcVar16 = -2;
                    uStack_f8 = uStack_f8 & 0xffffff;
                    (*pcVar24)(pcVar20,puVar19);
                  }
                  goto LAB_000e96e0;
                }
                (**(code **)(pcStack_100 + -0x7810))
                          (*(uint *)(pcStack_100 + -0x7fc4) + 0x39d4,0x2e4,
                           *(uint *)(pcStack_100 + -0x77f0) - 0x50e0);
LAB_000e9cb4:
                (**(code **)(pcVar4 + -0x7810))
                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,
                           *(uint *)(pcVar4 + -0x77f0) - 0x5068);
              }
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,
                         *(uint *)(pcVar4 + -0x77f0) - 0x5098);
LAB_000e9cec:
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,
                         *(uint *)(pcVar4 + -0x77f0) - 0x33a0);
LAB_000e9d08:
              uVar10 = *(uint *)(pcVar4 + -0x77f0);
LAB_000e9d0c:
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);
LAB_000e9d24:
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,
                         *(uint *)(pcVar4 + -0x77f0) - 0x50b0);
switchD_000e9b48_caseD_3:
              pcVar16 = *(code **)(pcVar4 + -0x7810);
              pcVar25 = FUN_000e9d5c;
              (*pcVar16)(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,
                         *(uint *)(pcVar4 + -0x77f0) - 0x50c8);
              pcVar14 = pcStack_e8;
              pcVar21 = pcStack_ec;
              pcVar4 = pcVar16 + 0x3df4e4;
              pcStack_134 = pcVar22;
              pcStack_140 = pcVar20;
              uVar17 = (uint)bStack_f1;
              piVar7 = piVar5;
              pcVar22 = pcStack_100;
              pcStack_160 = pcVar4;
              pcStack_13c = pcVar15;
              pcStack_138 = pcVar24;
              piStack_130 = piVar13;
              pcStack_12c = pcVar3;
              uStack_128 = uVar6;
              puStack_124 = puVar19;
              pcStack_120 = pcVar23;
              pcStack_11c = pcVar25;
              if (iStack_104 == 9) {
                pcStack_150 = *(code **)(pcVar16 + 0x3d7dc8);
                pcVar4 = pcStack_150;
                if (pcStack_fc != (code *)0x0) {
                  pcVar24 = (code *)0x0;
                  pcVar3 = *(code **)(pcVar16 + 0x3d7e00);
                  pcVar23 = (code *)&uStack_158;
                  puVar19 = (uint *)0xff00;
                  do {
                    if (uVar17 == 0) {
LAB_000ea0b8:
                      uVar6 = *(uint *)(pcVar22 + 4);
                      pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>
                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000
                                        >> 8);
                      if (pcVar20 < pcStack_f0) {
                        pcVar15 = (code *)((int)pcVar20 * 0x10);
                        pcVar4 = pcStack_160;
                        if (pcVar21 == (code *)0x0) goto LAB_000ea38c;
                        pcVar16 = pcVar21 + (int)pcVar15;
                        uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |
                                (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);
                        if (uVar6 < 0xff00) {
LAB_000ea208:
                          if (uVar6 == 0) goto LAB_000ea108;
                          uVar10 = *(uint *)(pcStack_160 + -0x77f0);
                          pcVar4 = pcStack_160;
                          if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;
                          if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000ea1b0;
                          cVar1 = pcVar16[0xc];
                        }
                        else {
                          if (uVar6 == 0xffff) {
                            iVar2 = piVar5[0xc];
                            pcStack_14c = pcVar20;
                            pcStack_148 = pcVar15;
                            pcStack_144 = pcVar16;
                            if (iVar2 == 0) {
                              iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);
                              piVar5[0xc] = iVar2;
                            }
                            uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_14c);
                            pcVar20 = pcStack_14c;
                            pcVar15 = pcStack_148;
                            pcVar16 = pcStack_144;
                            goto LAB_000ea208;
                          }
LAB_000ea108:
                          cVar1 = pcVar16[0xc];
                        }
                        pcVar4 = pcStack_160;
                        if (((byte)cVar1 & 0xf) == 3) {
                          if (*(code **)(*piVar5 + 0x60) == pcStack_150) {
                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;
                            iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);
                            uVar6 = *(uint *)(iVar2 + 0x98);
                          }
                          else {
                            iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);
                            uVar6 = *(uint *)(iVar2 + 0x98);
                          }
                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                          uStack_158 = CONCAT13(2,uStack_158._1_3_);
                          (*pcVar3)(pcVar14,pcVar23);
                        }
                        else {
                          pcVar15 = pcVar15 + piVar5[0x3a];
                          if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20)
                          goto LAB_000ea338;
                          if ((*(int *)pcVar15 != 0) &&
                             (uVar6 = *(uint *)(pcStack_160 + -0x77f0), *(int *)pcVar15 != -2))
                          goto LAB_000e9f98;
                          *(int *)pcVar15 = -2;
                          uStack_158 = uStack_158 & 0xffffff;
                          (*pcVar3)(pcVar14,pcVar23);
                        }
                      }
                      else {
                        uStack_158 = uStack_158 & 0xffffff;
                        (*pcVar3)(pcVar14,pcVar23);
                      }
                      *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;
                    }
                    else {
                      uVar6 = *(uint *)pcVar22;
                      uStack_168 = 0;
                      pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>
                                             0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) *
                                                     0x10000);
                      iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);
                      if (iVar2 != 0) goto LAB_000ea0b8;
LAB_000ea1b0:
                      uStack_158 = CONCAT13(8,uStack_158._1_3_);
                      (*pcVar3)(pcVar14,pcVar23);
                    }
                    pcVar24 = pcVar24 + 1;
                    pcVar22 = pcVar22 + 8;
                    pcVar4 = pcStack_fc;
                  } while (pcStack_fc != pcVar24);
                }
                return pcVar4;
              }
              if (iStack_104 == 4) {
                pcVar24 = *(code **)(pcVar16 + 0x3d7e00);
                if (pcStack_fc == (code *)0x0) {
                  return (code *)0x0;
                }
                pcVar3 = (code *)0x0;
                pcVar23 = *(code **)(pcVar16 + 0x3d7dc8);
                puVar19 = &uStack_158;
LAB_000e9e0c:
                while (uVar17 != 0) {
                  uVar6 = *(uint *)pcVar22;
                  uStack_168 = 0;
                  pcStack_164 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >>
                                         0x10) + ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000
                                        );
                  iVar2 = (**(code **)(pcStack_160 + -0x76e0))(uStack_f8,piVar5,uStack_108);
                  if (iVar2 != 0) break;
LAB_000e9f08:
                  uStack_158 = CONCAT13(8,uStack_158._1_3_);
                  (*pcVar24)(pcVar14,puVar19);
                  pcVar3 = pcVar3 + 1;
                  pcVar22 = pcVar22 + 0xc;
                  if (pcStack_fc == pcVar3) {
                    return pcStack_fc;
                  }
                }
                pcVar4 = pcStack_160;
                uVar6 = *(uint *)(pcVar22 + 4);
                pcVar20 = (code *)((((uVar6 >> 0x10) << 0x18 | (uVar6 >> 0x18) << 0x10) >> 0x10) +
                                   ((uVar6 & 0xff) << 8 | uVar6 >> 8 & 0xff) * 0x10000 >> 8);
                if (pcStack_f0 <= pcVar20) {
                  uStack_158 = uStack_158 & 0xffffff;
                  (*pcVar24)(pcVar14,puVar19);
LAB_000e9df0:
                  pcVar3 = pcVar3 + 1;
                  *(int *)((int)pcVar14 + 0xc) = *(int *)((int)pcVar14 + 0xc) + 1;
                  pcVar22 = pcVar22 + 0xc;
                  if (pcStack_fc == pcVar3) {
                    return pcStack_fc;
                  }
                  goto LAB_000e9e0c;
                }
                pcVar15 = (code *)((int)pcVar20 * 0x10);
                if (pcVar21 != (code *)0x0) {
                  pcVar16 = pcVar21 + (int)pcVar15;
                  uVar6 = (*(ushort *)(pcVar16 + 0xe) & 0xff) << 8 |
                          (uint)(*(ushort *)(pcVar16 + 0xe) >> 8);
                  if (uVar6 < 0xff00) {
LAB_000ea00c:
                    if (uVar6 == 0) goto LAB_000e9e68;
                    uVar10 = *(uint *)(pcStack_160 + -0x77f0);
                    pcVar4 = pcStack_160;
                    if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea3a8;
                    if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000e9f08;
                    cVar1 = pcVar16[0xc];
                  }
                  else {
                    if (uVar6 == 0xffff) {
                      iVar2 = piVar5[0xc];
                      pcStack_150 = pcVar20;
                      pcStack_14c = pcVar15;
                      pcStack_148 = pcVar16;
                      if (iVar2 == 0) {
                        iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);
                        piVar5[0xc] = iVar2;
                      }
                      uVar6 = (**(code **)(pcStack_160 + -0x7790))(iVar2,piVar5,pcStack_150);
                      pcVar20 = pcStack_150;
                      pcVar15 = pcStack_14c;
                      pcVar16 = pcStack_148;
                      goto LAB_000ea00c;
                    }
LAB_000e9e68:
                    cVar1 = pcVar16[0xc];
                  }
                  pcVar4 = pcStack_160;
                  if (((byte)cVar1 & 0xf) == 3) {
                    if (*(code **)(*piVar5 + 0x60) == pcVar23) {
                      if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) goto LAB_000ea354;
                      iVar2 = *(int *)(piVar5[0xe] + uVar6 * 4);
                      uVar6 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);
                      uVar6 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                    uStack_158 = CONCAT13(1,uStack_158._1_3_);
                    (*pcVar24)(pcVar14,puVar19);
                  }
                  else {
                    pcVar15 = pcVar15 + piVar5[0x3a];
                    if ((code *)(piVar5[0x3b] - piVar5[0x3a] >> 4) <= pcVar20) goto LAB_000ea338;
                    if ((*(int *)pcVar15 != 0) && (*(int *)pcVar15 != -2)) {
                      uVar6 = *(uint *)(pcStack_160 + -0x77f0);
LAB_000e9f98:
                      (**(code **)(pcStack_160 + -0x7810))
                                (*(uint *)(pcStack_160 + -0x7fc4) + 0x4570,0x71f,uVar6 - 0x48c0);
                    }
                    *(int *)pcVar15 = -2;
                    uStack_158 = uStack_158 & 0xffffff;
                    (*pcVar24)(pcVar14,puVar19);
                  }
                  goto LAB_000e9df0;
                }
                (**(code **)(pcStack_160 + -0x7810))
                          (*(uint *)(pcStack_160 + -0x7fc4) + 0x39d4,0x2e4,
                           *(uint *)(pcStack_160 + -0x77f0) - 0x48d8);
LAB_000ea338:
                (**(code **)(pcVar4 + -0x7810))
                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,
                           *(uint *)(pcVar4 + -0x77f0) - 0x489c);
LAB_000ea354:
                (**(code **)(pcVar4 + -0x7810))
                          (*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,
                           *(uint *)(pcVar4 + -0x77f0) - 0x33a0);
              }
              (**(code **)(pcVar4 + -0x7810))
                        (*(uint *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,
                         *(uint *)(pcVar4 + -0x77f0) - 0x4860);
LAB_000ea38c:
              uVar10 = *(uint *)(pcVar4 + -0x77f0) - 0x4878;
              (**(code **)(pcVar4 + -0x7810))(*(uint *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,uVar10);
LAB_000ea3a8:
              pcVar25 = *(code **)(pcVar4 + -0x7810);
              pcVar26 = FUN_000ea3c0;
              (*pcVar25)(*(uint *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,uVar10 - 0x34dc);
              pcVar16 = pcStack_148;
              pcVar15 = pcStack_14c;
              pcVar20 = pcStack_164;
              pcVar4 = pcVar25 + 0x3dee80;
              pcStack_194 = pcVar21;
              uStack_1a0 = (uint)pcVar14;
              puVar18 = (uint *)(uint)bStack_151;
              piVar13 = piVar7;
              pcVar21 = pcStack_160;
              pcStack_1c8 = pcVar4;
              pcStack_19c = pcVar22;
              pcStack_198 = pcVar24;
              piStack_190 = piVar5;
              pcStack_18c = pcVar3;
              uStack_188 = uVar17;
              puStack_184 = puVar19;
              pcStack_180 = pcVar23;
              pcStack_17c = pcVar26;
              if (pcStack_164 == (code *)0x9) {
                pcVar4 = *(code **)(pcVar25 + 0x3d768c);
                if (pcStack_15c != (code *)0x0) {
                  pcVar24 = (code *)0x0;
                  pcVar23 = *(code **)(pcVar25 + 0x3d7764);
                  pcStack_1b8 = *(code **)(pcVar25 + 0x3d768c) + 0x1864;
                  puVar19 = (uint *)(*(int *)(pcVar25 + 0x3d6ebc) + 0x546c);
                  do {
                    if (puVar18 == (uint *)0x0) {
LAB_000ea73c:
                      uVar17 = *(uint *)(pcVar21 + 4);
                      pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >>
                                        0x10) + ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) *
                                                0x10000);
                      pcVar22 = (code *)((uint)pcVar3 >> 8);
                      if (pcVar22 < pcStack_150) {
                        iVar2 = (int)pcVar22 * 0x10;
                        pcVar4 = pcStack_1c8;
                        if (pcVar15 == (code *)0x0) goto LAB_000eaad4;
                        pcVar14 = pcVar15 + iVar2;
                        pcVar25 = (code *)((*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |
                                          (uint)(*(ushort *)(pcVar14 + 0xe) >> 8));
                        if (pcVar25 < (code *)0xff00) {
LAB_000ea888:
                          if (pcVar25 == (code *)0x0) goto LAB_000ea790;
                          pcVar4 = pcStack_1c8;
                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)
                          goto LAB_000eaab8;
                          if (*(int *)(piVar7[0xe] + (int)pcVar25 * 4) == 0) goto LAB_000ea7b4;
                          cVar1 = pcVar14[0xc];
                        }
                        else {
                          if (pcVar25 == (code *)0xffff) {
                            iVar11 = piVar7[0xc];
                            pcStack_1b4 = pcVar3;
                            pcStack_1b0 = pcVar22;
                            iStack_1ac = iVar2;
                            pcStack_1a8 = pcVar14;
                            if (iVar11 == 0) {
                              iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7,&uStack_1c0);
                              piVar7[0xc] = iVar11;
                            }
                            uVar17 = (uint)pcStack_1b4;
                            pcStack_1b4 = pcStack_1b0;
                            pcVar4 = pcStack_1b0;
                            pcStack_1b0 = (code *)uVar17;
                            pcVar25 = (code *)(**(code **)(pcStack_1c8 + -0x7790))
                                                        (iVar11,piVar7,pcVar4);
                            pcVar3 = pcStack_1b0;
                            pcVar22 = pcStack_1b4;
                            iVar2 = iStack_1ac;
                            pcVar14 = pcStack_1a8;
                            goto LAB_000ea888;
                          }
LAB_000ea790:
                          cVar1 = pcVar14[0xc];
                        }
                        uVar17 = (uint)pcVar3 & 0xff;
                        pcVar4 = pcStack_1c8;
                        if (((byte)cVar1 & 0xf) != 3) {
                          if (pcVar22 == (code *)0x0 && uVar17 == 0) goto LAB_000ea7b4;
                          piVar5 = (int *)(piVar7[0x3a] + iVar2);
                          if (pcVar22 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {
                            iVar2 = *piVar5;
                            if (iVar2 != 0) {
                              iVar11 = *(int *)(pcStack_1c8 + -0x77f0);
                              pcVar4 = (code *)0x9;
                              if (iVar2 != -2) goto LAB_000ea5b0;
                            }
                            *piVar5 = -2;
                            goto LAB_000ea704;
                          }
                          goto LAB_000eaa64;
                        }
                        if (uVar17 != 4) {
                          pcStack_1b4 = pcVar25;
                          uVar17 = (*pcStack_1b8)(uVar17,piVar7);
                          pcVar4 = pcStack_1c8;
                          if (uVar17 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000ea8f8. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                            pcVar4 = (code *)(*(pcStack_1c8 + puVar19[uVar17]))();
                            return pcVar4;
                          }
                          goto switchD_000ea8f8_caseD_3;
                        }
                        if (*(code **)(*piVar7 + 0x60) == pcVar23) {
                          if ((code *)(piVar7[0xf] - piVar7[0xe] >> 2) <= pcVar25)
                          goto LAB_000eaa9c;
                          iVar2 = *(int *)(piVar7[0xe] + (int)pcVar25 * 4);
                          pcStack_1b4 = pcVar20;
                        }
                        else {
                          pcStack_1b4 = pcVar20;
                          iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,pcVar25);
                        }
                        pcVar4 = *(code **)(pcStack_1c8 + -0x76e4);
                        *(uint *)(iVar2 + 0x98) = *(uint *)(iVar2 + 0x98) & 0x7fffffff | 0x80000000;
                        uStack_1c0 = CONCAT13((char)pcStack_1b4,uStack_1c0._1_3_);
                        (*pcVar4)(pcVar16,&uStack_1c0);
                        if (pcStack_1b4 == (code *)&DAT_00000008) goto LAB_000ea724;
                        iVar2 = *(int *)(pcVar16 + 0xc);
                      }
                      else {
LAB_000ea704:
                        uStack_1c0 = uStack_1c0 & 0xffffff;
                        (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);
                        iVar2 = *(int *)(pcVar16 + 0xc);
                      }
                      *(int *)(pcVar16 + 0xc) = iVar2 + 1;
                    }
                    else {
                      uVar17 = *(uint *)pcVar21;
                      uStack_1d0 = 0;
                      iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +
                                   ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;
                      iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);
                      if (iVar2 != 0) goto LAB_000ea73c;
LAB_000ea7b4:
                      uStack_1c0 = CONCAT13(8,uStack_1c0._1_3_);
                      (**(code **)(pcStack_1c8 + -0x76e4))(pcVar16,&uStack_1c0);
                    }
LAB_000ea724:
                    pcVar24 = pcVar24 + 1;
                    pcVar21 = pcVar21 + 8;
                    pcVar4 = pcStack_15c;
                  } while (pcStack_15c != pcVar24);
                }
                return pcVar4;
              }
              if (pcStack_164 == (code *)&DAT_00000004) {
                pcStack_1b8 = *(code **)(pcVar25 + 0x3d7764);
                if (pcStack_15c == (code *)0x0) {
                  return pcStack_1b8;
                }
                pcVar20 = (code *)0x0;
                pcVar24 = *(code **)(pcVar25 + 0x3d779c);
                pcVar23 = (code *)&DAT_00000008;
                puVar19 = &uStack_1c0;
LAB_000ea478:
                while (puVar18 != (uint *)0x0) {
                  uVar17 = *(uint *)pcVar21;
                  uStack_1d0 = 0;
                  iStack_1cc = (((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +
                               ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000;
                  iVar2 = (**(code **)(pcStack_1c8 + -0x76e0))(uStack_158,piVar7,uStack_168);
                  if (iVar2 != 0) break;
LAB_000ea4f4:
                  uStack_1c0 = CONCAT13((char)pcVar23,uStack_1c0._1_3_);
                  (*pcVar24)(pcVar16,puVar19);
                  pcVar20 = pcVar20 + 1;
                  pcVar21 = pcVar21 + 0xc;
                  if (pcStack_15c == pcVar20) {
                    return pcStack_15c;
                  }
                }
                pcVar4 = pcStack_1c8;
                uVar17 = *(uint *)(pcVar21 + 4);
                pcVar3 = (code *)((((uVar17 >> 0x10) << 0x18 | (uVar17 >> 0x18) << 0x10) >> 0x10) +
                                 ((uVar17 & 0xff) << 8 | uVar17 >> 8 & 0xff) * 0x10000);
                pcVar22 = (code *)((uint)pcVar3 >> 8);
                if (pcStack_150 <= pcVar22) {
                  uStack_1c0 = uStack_1c0 & 0xffffff;
                  (*pcVar24)(pcVar16,puVar19);
LAB_000ea45c:
                  pcVar20 = pcVar20 + 1;
                  *(int *)(pcVar16 + 0xc) = *(int *)(pcVar16 + 0xc) + 1;
                  pcVar21 = pcVar21 + 0xc;
                  if (pcStack_15c == pcVar20) {
                    return pcStack_15c;
                  }
                  goto LAB_000ea478;
                }
                iVar2 = (int)pcVar22 * 0x10;
                if (pcVar15 != (code *)0x0) {
                  pcVar14 = pcVar15 + iVar2;
                  uVar17 = (*(ushort *)(pcVar14 + 0xe) & 0xff) << 8 |
                           (uint)(*(ushort *)(pcVar14 + 0xe) >> 8);
                  if (uVar17 < 0xff00) {
LAB_000ea62c:
                    if (uVar17 == 0) goto LAB_000ea4d4;
                    iVar11 = *(int *)(pcStack_1c8 + -0x77f0);
                    pcVar4 = pcStack_1c8;
                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaabc;
                    if (*(int *)(piVar7[0xe] + uVar17 * 4) == 0) goto LAB_000ea4f4;
                    cVar1 = pcVar14[0xc];
                  }
                  else {
                    if (uVar17 == 0xffff) {
                      iVar11 = piVar7[0xc];
                      pcStack_1b4 = pcVar3;
                      pcStack_1b0 = pcVar22;
                      iStack_1ac = iVar2;
                      pcStack_1a8 = pcVar14;
                      if (iVar11 == 0) {
                        iVar11 = (**(code **)(*piVar7 + 0x6c))(piVar7);
                        piVar7[0xc] = iVar11;
                      }
                      uVar17 = (uint)pcStack_1b4;
                      pcStack_1b4 = pcStack_1b0;
                      pcVar4 = pcStack_1b0;
                      pcStack_1b0 = (code *)uVar17;
                      uVar17 = (**(code **)(pcStack_1c8 + -0x7790))(iVar11,piVar7,pcVar4);
                      pcVar3 = pcStack_1b0;
                      pcVar22 = pcStack_1b4;
                      iVar2 = iStack_1ac;
                      pcVar14 = pcStack_1a8;
                      goto LAB_000ea62c;
                    }
LAB_000ea4d4:
                    cVar1 = pcVar14[0xc];
                  }
                  pcVar4 = pcStack_1c8;
                  if (((byte)cVar1 & 0xf) == 3) {
                    if (*(code **)(*piVar7 + 0x60) == pcStack_1b8) {
                      if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar17) goto LAB_000eaa9c;
                      iVar2 = *(int *)(piVar7[0xe] + uVar17 * 4);
                      uVar17 = *(uint *)(iVar2 + 0x98);
                    }
                    else {
                      iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar17);
                      uVar17 = *(uint *)(iVar2 + 0x98);
                    }
                    *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;
                    uStack_1c0 = CONCAT13(1,uStack_1c0._1_3_);
                    (*pcVar24)(pcVar16,puVar19);
                  }
                  else {
                    if (((uint)pcVar3 & 0xff) == 0 && pcVar22 == (code *)0x0) goto LAB_000ea4f4;
                    pcVar14 = (code *)(piVar7[0x3a] + iVar2);
                    if ((code *)(piVar7[0x3b] - piVar7[0x3a] >> 4) <= pcVar22) goto LAB_000eaa64;
                    if ((*(int *)pcVar14 != 0) && (*(int *)pcVar14 != -2)) {
                      iVar11 = *(int *)(pcStack_1c8 + -0x77f0);
                      pcVar4 = pcVar20;
LAB_000ea5b0:
                      (**(code **)(pcStack_1c8 + -0x7810))
                                (*(int *)(pcStack_1c8 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x48c0);
                      pcVar20 = pcVar4;
                    }
                    *(int *)pcVar14 = -2;
                    uStack_1c0 = uStack_1c0 & 0xffffff;
                    (*pcVar24)(pcVar16,puVar19);
                  }
                  goto LAB_000ea45c;
                }
                (**(code **)(pcStack_1c8 + -0x7810))
                          (*(int *)(pcStack_1c8 + -0x7fc4) + 0x39d4,0x2e4,
                           *(int *)(pcStack_1c8 + -0x77f0) + -0x4938);
LAB_000eaa64:
                (**(code **)(pcVar4 + -0x7810))
                          (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,
                           *(int *)(pcVar4 + -0x77f0) + -0x489c);
              }
              (**(code **)(pcVar4 + -0x7810))
                        (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x279c,
                         *(int *)(pcVar4 + -0x77f0) + -0x48f0);
LAB_000eaa9c:
              (**(code **)(pcVar4 + -0x7810))
                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,
                         *(int *)(pcVar4 + -0x77f0) + -0x33a0);
LAB_000eaab8:
              iVar11 = *(int *)(pcVar4 + -0x77f0);
LAB_000eaabc:
              (**(code **)(pcVar4 + -0x7810))
                        (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);
LAB_000eaad4:
              (**(code **)(pcVar4 + -0x7810))
                        (*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,
                         *(int *)(pcVar4 + -0x77f0) + -0x4908);
switchD_000ea8f8_caseD_3:
              pcVar14 = *(code **)(pcVar4 + -0x7810);
              pcVar25 = FUN_000eab0c;
              (*pcVar14)(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x276,
                         *(int *)(pcVar4 + -0x77f0) + -0x4920);
              pcVar22 = pcStack_1b0;
              pcVar3 = pcStack_1b4;
              pcVar4 = pcVar14 + 0x3de734;
              pcStack_1fc = pcVar15;
              pcStack_208 = pcVar16;
              uVar17 = (uint)bStack_1b9;
              piVar5 = piVar13;
              pcVar15 = pcStack_1c8;
              pcStack_228 = pcVar4;
              pcStack_204 = pcVar21;
              pcStack_200 = pcVar24;
              piStack_1f8 = piVar7;
              pcStack_1f4 = pcVar20;
              puStack_1f0 = puVar18;
              puStack_1ec = puVar19;
              pcStack_1e8 = pcVar23;
              pcStack_1e4 = pcVar25;
              if (iStack_1cc == 9) {
                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);
                pcVar4 = pcStack_218;
                if (pcStack_1c4 != (code *)0x0) {
                  pcVar20 = *(code **)(pcVar14 + 0x3d7050);
                  pcVar24 = (code *)0x0;
                  puVar18 = &uStack_220;
                  pcVar23 = (code *)&DAT_aaaaaaab;
                  do {
                    if (uVar17 == 0) {
LAB_000eae6c:
                      pcVar21 = *(code **)(pcVar15 + 8);
                      if (pcVar21 < pcStack_1b8) {
                        pcVar4 = pcStack_228;
                        if (pcVar3 == (code *)0x0) goto LAB_000eb138;
                        iVar2 = (int)pcVar21 * 0x18;
                        pcVar14 = pcVar3 + iVar2;
                        uVar6 = (uint)*(ushort *)(pcVar14 + 6);
                        if (uVar6 < 0xff00) {
LAB_000eafac:
                          if (uVar6 == 0) goto LAB_000eaeb0;
                          iVar11 = *(int *)(pcStack_228 + -0x77f0);
                          pcVar4 = pcStack_228;
                          if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;
                          if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eaf54;
                          cVar1 = pcVar14[4];
                        }
                        else {
                          if (uVar6 == 0xffff) {
                            iVar11 = piVar13[0xc];
                            iStack_20c = iVar2;
                            pcStack_214 = pcVar21;
                            pcStack_210 = pcVar14;
                            if (iVar11 == 0) {
                              iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);
                              piVar13[0xc] = iVar11;
                            }
                            uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214)
                            ;
                            iVar2 = iStack_20c;
                            pcVar21 = pcStack_214;
                            pcVar14 = pcStack_210;
                            goto LAB_000eafac;
                          }
LAB_000eaeb0:
                          cVar1 = pcVar14[4];
                        }
                        pcVar4 = pcStack_228;
                        if (((byte)cVar1 & 0xf) == 3) {
                          if (*(code **)(*piVar13 + 0x60) == pcStack_218) {
                            if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6)
                            goto LAB_000eb100;
                            iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);
                            uVar6 = *(uint *)(iVar2 + 0x98);
                          }
                          else {
                            iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);
                            uVar6 = *(uint *)(iVar2 + 0x98);
                          }
                          *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                          uStack_220 = CONCAT13(2,uStack_220._1_3_);
                          (*pcVar20)(pcVar22,puVar18);
                        }
                        else {
                          piVar7 = (int *)(piVar13[0x3a] + iVar2);
                          if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * -0x55555555) <=
                              pcVar21) goto LAB_000eb0e4;
                          iVar2 = *piVar7;
                          if ((iVar2 != 0) &&
                             (iVar11 = *(int *)(pcStack_228 + -0x77f0), iVar2 != -2))
                          goto LAB_000ead48;
                          *piVar7 = -2;
                          uStack_220 = uStack_220 & 0xffffff;
                          (*pcVar20)(pcVar22,puVar18);
                        }
                      }
                      else {
                        uStack_220 = uStack_220 & 0xffffff;
                        (*pcVar20)(pcVar22,puVar18);
                      }
                      *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;
                    }
                    else {
                      pcStack_22c = *(code **)(pcVar15 + 4);
                      uStack_230 = *(undefined4 *)pcVar15;
                      iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);
                      if (iVar2 != 0) goto LAB_000eae6c;
LAB_000eaf54:
                      uStack_220 = CONCAT13(8,uStack_220._1_3_);
                      (*pcVar20)(pcVar22,puVar18);
                    }
                    pcVar24 = pcVar24 + 1;
                    pcVar15 = pcVar15 + 0x10;
                    pcVar4 = pcStack_1c4;
                  } while (pcStack_1c4 != pcVar24);
                }
              }
              else {
                if (iStack_1cc != 4) {
LAB_000eb11c:
                  (**(code **)(pcVar4 + -0x7810))
                            (*(int *)(pcVar4 + -0x7fc4) + 0x3588,0x27da,
                             *(int *)(pcVar4 + -0x77f0) + -0x40ec);
LAB_000eb138:
                  iVar11 = *(int *)(pcVar4 + -0x77f0) + -0x4104;
                  (**(code **)(pcVar4 + -0x7810))(*(int *)(pcVar4 + -0x7fc4) + 0x39d4,0x2e4,iVar11);
LAB_000eb154:
                  pcVar16 = *(code **)(pcVar4 + -0x7810);
                  pcVar25 = FUN_000eb16c;
                  (*pcVar16)(*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x50b,iVar11 + -0x34dc);
                  pcVar14 = pcStack_210;
                  pcVar21 = pcStack_214;
                  pcVar4 = pcStack_22c;
                  pcStack_25c = pcVar3;
                  uStack_268 = (uint)pcVar22;
                  pcStack_264 = pcVar15;
                  pcStack_260 = pcVar24;
                  piStack_258 = piVar13;
                  pcStack_254 = pcVar20;
                  puStack_250 = puVar18;
                  uStack_24c = uVar17;
                  pcStack_248 = pcVar23;
                  pcStack_244 = pcVar25;
                  if (pcStack_22c == (code *)0x9) {
                    pcVar3 = *(code **)(pcVar16 + 0x3d68e0);
                    if (pcStack_224 != (code *)0x0) {
                      pcVar20 = (code *)0x0;
                      iVar2 = *(int *)(pcVar16 + 0x3d6110);
                      pcVar15 = *(code **)(pcVar16 + 0x3d69b8);
                      pcStack_280 = *(code **)(pcVar16 + 0x3d68e0) + 0x1864;
                      pcVar22 = pcStack_228;
                      do {
                        if ((cStack_219 == '\0') ||
                           (iVar11 = (**(code **)(pcVar16 + 0x3d69f4))(uStack_220,piVar5,uStack_230)
                           , iVar11 != 0)) {
                          pcVar3 = *(code **)(pcVar22 + 8);
                          if (pcVar3 < pcStack_218) {
                            if (pcVar21 == (code *)0x0) {
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,
                                                          0x2e4,*(int *)(pcVar16 + 0x3d68e4) +
                                                                -0x4170);
                              return pcVar4;
                            }
                            iVar11 = (int)pcVar3 * 0x18;
                            pcVar24 = pcVar21 + iVar11;
                            uVar6 = (uint)*(ushort *)(pcVar24 + 6);
                            uVar17 = (uint)(byte)pcVar22[0xf];
                            if (uVar6 < 0xff00) {
LAB_000eb628:
                              if (uVar6 == 0) goto LAB_000eb52c;
                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6) {
                                iVar2 = *(int *)(pcVar16 + 0x3d68e4);
                                goto LAB_000eb860;
                              }
                              if (*(int *)(piVar5[0xe] + uVar6 * 4) == 0) goto LAB_000eb5c8;
                              cVar1 = pcVar24[4];
                            }
                            else {
                              if (uVar6 == 0xffff) {
                                iVar12 = piVar5[0xc];
                                iStack_270 = iVar11;
                                pcStack_27c = pcVar3;
                                uStack_278 = uVar17;
                                pcStack_274 = pcVar24;
                                if (iVar12 == 0) {
                                  iVar12 = (**(code **)(*piVar5 + 0x6c))(piVar5,auStack_288);
                                  piVar5[0xc] = iVar12;
                                }
                                uVar6 = (**(code **)(pcVar16 + 0x3d6944))(iVar12,piVar5,pcStack_27c)
                                ;
                                iVar11 = iStack_270;
                                pcVar3 = pcStack_27c;
                                uVar17 = uStack_278;
                                pcVar24 = pcStack_274;
                                goto LAB_000eb628;
                              }
LAB_000eb52c:
                              cVar1 = pcVar24[4];
                            }
                            if (((byte)cVar1 & 0xf) != 3) {
                              if ((uVar17 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb5c8;
                              piVar7 = (int *)(piVar5[0x3a] + iVar11);
                              if (pcVar3 < (code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555
                                                   )) {
                                iVar11 = *piVar7;
                                if ((iVar11 == 0) ||
                                   (iVar12 = *(int *)(pcVar16 + 0x3d68e4), iVar11 == -2)) {
                                  *piVar7 = -2;
                                  goto LAB_000eb4ac;
                                }
                                goto LAB_000eb2d8;
                              }
                              goto LAB_000eb808;
                            }
                            if (uVar17 != 4) {
                              pcStack_27c = (code *)uVar6;
                              uVar17 = (*pcStack_280)(uVar17,piVar5);
                              if (uVar17 < 9) {
                    /* WARNING: Could not recover jumptable at 0x000eb69c. Too many branches */
                    /* WARNING: Treating indirect jump as call */
                                pcVar4 = (code *)(*(pcVar16 +
                                                   *(int *)(iVar2 + 0x5490 + uVar17 * 4) + 0x3de0d4)
                                                 )();
                                return pcVar4;
                              }
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,
                                                          0x276,*(int *)(pcVar16 + 0x3d68e4) +
                                                                -0x4188);
                              return pcVar4;
                            }
                            if (*(code **)(*piVar5 + 0x60) == pcVar15) {
                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar6)
                              goto LAB_000eb840;
                              iVar11 = *(int *)(piVar5[0xe] + uVar6 * 4);
                              pcStack_27c = pcVar4;
                            }
                            else {
                              pcStack_27c = pcVar4;
                              iVar11 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar6);
                            }
                            pcVar3 = *(code **)(pcVar16 + 0x3d69f0);
                            *(uint *)(iVar11 + 0x98) =
                                 *(uint *)(iVar11 + 0x98) & 0x7fffffff | 0x80000000;
                            auStack_288[0] = SUB41(pcStack_27c,0);
                            (*pcVar3)(pcVar14,auStack_288);
                            if (pcStack_27c == (code *)&DAT_00000008) goto LAB_000eb4cc;
                            iVar11 = *(int *)(pcVar14 + 0xc);
                          }
                          else {
LAB_000eb4ac:
                            auStack_288[0] = 0;
                            (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);
                            iVar11 = *(int *)(pcVar14 + 0xc);
                          }
                          *(int *)(pcVar14 + 0xc) = iVar11 + 1;
                        }
                        else {
LAB_000eb5c8:
                          auStack_288[0] = 8;
                          (**(code **)(pcVar16 + 0x3d69f0))(pcVar14,auStack_288);
                        }
LAB_000eb4cc:
                        pcVar20 = pcVar20 + 1;
                        pcVar22 = pcVar22 + 0x10;
                        pcVar3 = pcStack_224;
                      } while (pcStack_224 != pcVar20);
                    }
                  }
                  else {
                    if (pcStack_22c != (code *)&DAT_00000004) {
                      pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                 (*(int *)(pcVar16 + 0x3d6110) + 0x3588,0x279c,
                                                  *(int *)(pcVar16 + 0x3d68e4) + -0x4158);
                      return pcVar4;
                    }
                    pcStack_280 = *(code **)(pcVar16 + 0x3d69b8);
                    pcVar3 = pcStack_280;
                    if (pcStack_224 != (code *)0x0) {
                      pcVar22 = *(code **)(pcVar16 + 0x3d69f0);
                      pcVar20 = (code *)0x0;
                      pcVar4 = pcStack_228;
                      do {
                        while ((cStack_219 != '\0' &&
                               (iVar2 = (**(code **)(pcVar16 + 0x3d69f4))
                                                  (uStack_220,piVar5,uStack_230), iVar2 == 0))) {
LAB_000eb42c:
                          auStack_288[0] = 8;
                          (*pcVar22)(pcVar14,auStack_288);
                          pcVar20 = pcVar20 + 1;
                          pcVar4 = pcVar4 + 0x18;
                          if (pcStack_224 == pcVar20) {
                            return pcStack_224;
                          }
                        }
                        pcVar3 = *(code **)(pcVar4 + 8);
                        if (pcVar3 < pcStack_218) {
                          if (pcVar21 == (code *)0x0) {
                            pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                       (*(int *)(pcVar16 + 0x3d6110) + 0x39d4,0x2e4,
                                                        *(int *)(pcVar16 + 0x3d68e4) + -0x41a0);
                            return pcVar4;
                          }
                          iVar11 = (int)pcVar3 * 0x18;
                          pcVar15 = pcVar21 + iVar11;
                          uVar17 = (uint)*(ushort *)(pcVar15 + 6);
                          uVar6 = (uint)(byte)pcVar4[0xf];
                          if (uVar17 < 0xff00) {
LAB_000eb354:
                            if (uVar17 == 0) goto LAB_000eb278;
                            iVar2 = *(int *)(pcVar16 + 0x3d68e4);
                            if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {
LAB_000eb860:
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,
                                                          0x50b,iVar2 + -0x34dc);
                              return pcVar4;
                            }
                            if (*(int *)(piVar5[0xe] + uVar17 * 4) == 0) goto LAB_000eb42c;
                            cVar1 = pcVar15[4];
                          }
                          else {
                            if (uVar17 == 0xffff) {
                              iVar2 = piVar5[0xc];
                              iStack_270 = iVar11;
                              pcStack_27c = pcVar3;
                              uStack_278 = uVar6;
                              pcStack_274 = pcVar15;
                              if (iVar2 == 0) {
                                iVar2 = (**(code **)(*piVar5 + 0x6c))(piVar5);
                                piVar5[0xc] = iVar2;
                              }
                              uVar17 = (**(code **)(pcVar16 + 0x3d6944))(iVar2,piVar5,pcStack_27c);
                              iVar11 = iStack_270;
                              pcVar3 = pcStack_27c;
                              uVar6 = uStack_278;
                              pcVar15 = pcStack_274;
                              goto LAB_000eb354;
                            }
LAB_000eb278:
                            cVar1 = pcVar15[4];
                          }
                          if (((byte)cVar1 & 0xf) == 3) {
                            if (*(code **)(*piVar5 + 0x60) == pcStack_280) {
                              if ((uint)(piVar5[0xf] - piVar5[0xe] >> 2) <= uVar17) {
LAB_000eb840:
                                pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                           (*(int *)(pcVar16 + 0x3d6110) + 0x4570,
                                                            0x5c8,*(int *)(pcVar16 + 0x3d68e4) +
                                                                  -0x33a0);
                                return pcVar4;
                              }
                              iVar2 = *(int *)(piVar5[0xe] + uVar17 * 4);
                              uVar17 = *(uint *)(iVar2 + 0x98);
                            }
                            else {
                              iVar2 = (**(code **)(*piVar5 + 0x60))(piVar5,uVar17);
                              uVar17 = *(uint *)(iVar2 + 0x98);
                            }
                            *(uint *)(iVar2 + 0x98) = uVar17 & 0x7fffffff | 0x80000000;
                            auStack_288[0] = 1;
                            (*pcVar22)(pcVar14,auStack_288);
                          }
                          else {
                            if ((uVar6 == 0) && (pcVar3 == (code *)0x0)) goto LAB_000eb42c;
                            piVar7 = (int *)(piVar5[0x3a] + iVar11);
                            if ((code *)((piVar5[0x3b] - piVar5[0x3a] >> 3) * -0x55555555) <= pcVar3
                               ) {
LAB_000eb808:
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,
                                                          0x8e3,*(int *)(pcVar16 + 0x3d68e4) +
                                                                -0x4128);
                              return pcVar4;
                            }
                            iVar2 = *piVar7;
                            if ((iVar2 != 0) && (iVar2 != -2)) {
                              iVar12 = *(int *)(pcVar16 + 0x3d68e4);
LAB_000eb2d8:
                              pcVar4 = (code *)(**(code **)(pcVar16 + 0x3d68c4))
                                                         (*(int *)(pcVar16 + 0x3d6110) + 0x4570,
                                                          0x71f,iVar12 + -0x3524);
                              return pcVar4;
                            }
                            *piVar7 = -2;
                            auStack_288[0] = 0;
                            (*pcVar22)(pcVar14,auStack_288);
                          }
                        }
                        else {
                          auStack_288[0] = 0;
                          (*pcVar22)(pcVar14,auStack_288);
                        }
                        pcVar20 = pcVar20 + 1;
                        *(int *)(pcVar14 + 0xc) = *(int *)(pcVar14 + 0xc) + 1;
                        pcVar4 = pcVar4 + 0x18;
                        pcVar3 = pcStack_224;
                      } while (pcStack_224 != pcVar20);
                    }
                  }
                  return pcVar3;
                }
                pcStack_218 = *(code **)(pcVar14 + 0x3d7018);
                pcVar4 = pcStack_218;
                if (pcStack_1c4 != (code *)0x0) {
                  pcVar24 = *(code **)(pcVar14 + 0x3d7050);
                  pcVar20 = (code *)0x0;
                  pcVar23 = (code *)&uStack_220;
                  puVar18 = (uint *)&DAT_aaaaaaab;
LAB_000eabc8:
                  while (uVar17 != 0) {
                    pcStack_22c = *(code **)(pcVar15 + 4);
                    uStack_230 = *(undefined4 *)pcVar15;
                    iVar2 = (**(code **)(pcStack_228 + -0x76e0))(uStack_1c0,piVar13,uStack_1d0);
                    if (iVar2 != 0) break;
LAB_000eacb4:
                    uStack_220 = CONCAT13(8,uStack_220._1_3_);
                    (*pcVar24)(pcVar22,pcVar23);
                    pcVar20 = pcVar20 + 1;
                    pcVar15 = pcVar15 + 0x18;
                    if (pcStack_1c4 == pcVar20) {
                      return pcStack_1c4;
                    }
                  }
                  pcVar4 = pcStack_228;
                  pcVar14 = *(code **)(pcVar15 + 8);
                  if (pcVar14 < pcStack_1b8) {
                    if (pcVar3 == (code *)0x0) {
                      (**(code **)(pcStack_228 + -0x7810))
                                (*(int *)(pcStack_228 + -0x7fc4) + 0x39d4,0x2e4,
                                 *(int *)(pcStack_228 + -0x77f0) + -0x4140);
LAB_000eb0e4:
                      (**(code **)(pcVar4 + -0x7810))
                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x8e3,
                                 *(int *)(pcVar4 + -0x77f0) + -0x4128);
LAB_000eb100:
                      (**(code **)(pcVar4 + -0x7810))
                                (*(int *)(pcVar4 + -0x7fc4) + 0x4570,0x5c8,
                                 *(int *)(pcVar4 + -0x77f0) + -0x33a0);
                      goto LAB_000eb11c;
                    }
                    iVar2 = (int)pcVar14 * 0x18;
                    pcVar21 = pcVar3 + iVar2;
                    uVar6 = (uint)*(ushort *)(pcVar21 + 6);
                    if (uVar6 < 0xff00) {
LAB_000eadbc:
                      if (uVar6 == 0) goto LAB_000eac14;
                      iVar11 = *(int *)(pcStack_228 + -0x77f0);
                      pcVar4 = pcStack_228;
                      if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb154;
                      if (*(int *)(piVar13[0xe] + uVar6 * 4) == 0) goto LAB_000eacb4;
                      cVar1 = pcVar21[4];
                    }
                    else {
                      if (uVar6 == 0xffff) {
                        iVar11 = piVar13[0xc];
                        pcStack_214 = pcVar14;
                        iStack_20c = iVar2;
                        pcStack_210 = pcVar21;
                        if (iVar11 == 0) {
                          iVar11 = (**(code **)(*piVar13 + 0x6c))(piVar13);
                          piVar13[0xc] = iVar11;
                        }
                        uVar6 = (**(code **)(pcStack_228 + -0x7790))(iVar11,piVar13,pcStack_214);
                        pcVar14 = pcStack_214;
                        iVar2 = iStack_20c;
                        pcVar21 = pcStack_210;
                        goto LAB_000eadbc;
                      }
LAB_000eac14:
                      cVar1 = pcVar21[4];
                    }
                    pcVar4 = pcStack_228;
                    if (((byte)cVar1 & 0xf) == 3) {
                      if (*(code **)(*piVar13 + 0x60) == pcStack_218) {
                        if ((uint)(piVar13[0xf] - piVar13[0xe] >> 2) <= uVar6) goto LAB_000eb100;
                        iVar2 = *(int *)(piVar13[0xe] + uVar6 * 4);
                        uVar6 = *(uint *)(iVar2 + 0x98);
                      }
                      else {
                        iVar2 = (**(code **)(*piVar13 + 0x60))(piVar13,uVar6);
                        uVar6 = *(uint *)(iVar2 + 0x98);
                      }
                      *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                      uStack_220 = CONCAT13(1,uStack_220._1_3_);
                      (*pcVar24)(pcVar22,pcVar23);
                    }
                    else {
                      pcVar21 = (code *)(piVar13[0x3a] + iVar2);
                      if ((code *)((piVar13[0x3b] - piVar13[0x3a] >> 3) * (int)puVar18) <= pcVar14)
                      goto LAB_000eb0e4;
                      if ((*(int *)pcVar21 != 0) && (*(int *)pcVar21 != -2)) {
                        iVar11 = *(int *)(pcStack_228 + -0x77f0);
LAB_000ead48:
                        (**(code **)(pcStack_228 + -0x7810))
                                  (*(int *)(pcStack_228 + -0x7fc4) + 0x4570,0x71f,iVar11 + -0x3524);
                      }
                      *(int *)pcVar21 = -2;
                      uStack_220 = uStack_220 & 0xffffff;
                      (*pcVar24)(pcVar22,pcVar23);
                    }
                  }
                  else {
                    uStack_220 = uStack_220 & 0xffffff;
                    (*pcVar24)(pcVar22,pcVar23);
                  }
                  pcVar20 = pcVar20 + 1;
                  *(int *)((int)pcVar22 + 0xc) = *(int *)((int)pcVar22 + 0xc) + 1;
                  pcVar15 = pcVar15 + 0x18;
                  if (pcStack_1c4 == pcVar20) {
                    return pcStack_1c4;
                  }
                  goto LAB_000eabc8;
                }
              }
              return pcVar4;
            }
            unaff_s2 = *(code **)(pcVar20 + 0x3d8b48);
            pcVar3 = param_1;
            if (param_1 != (code *)0x0) {
              unaff_s5 = (code *)0x0;
              unaff_s8 = *(code **)(pcVar20 + 0x3d8b10);
              unaff_s7 = &uStack_90;
              do {
                while (uVar17 != 0) {
                  pcStack_9c = (code *)*puStack_38;
                  uStack_a0 = 0;
                  iVar2 = (**(code **)(pcStack_98 + -0x76e0))(param_4,piVar7,pcVar4 + 0x3e03cc);
                  if (iVar2 != 0) break;
LAB_000e91a4:
                  uStack_90 = CONCAT13(8,uStack_90._1_3_);
                  (*unaff_s2)(iStack_20,unaff_s7);
                  unaff_s5 = unaff_s5 + 1;
                  puStack_38 = puStack_38 + 3;
                  if (param_1 == unaff_s5) {
                    return param_1;
                  }
                }
                pcVar22 = pcStack_98;
                pcVar3 = (code *)((uint)puStack_38[1] >> 8);
                if (pcVar3 < pcStack_28) {
                  pcVar20 = (code *)((int)pcVar3 * 0x10);
                  if (iStack_24 == 0) {
                    (**(code **)(pcStack_98 + -0x7810))
                              (*(int *)(pcStack_98 + -0x7fc4) + 0x39d4,0x2e4,
                               *(int *)(pcStack_98 + -0x77f0) + -0x5080);
LAB_000e95bc:
                    iVar2 = *(int *)(pcVar22 + -0x77f0);
LAB_000e95c0:
                    (**(code **)(pcVar22 + -0x7810))
                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x8e3,iVar2 + -0x5068);
LAB_000e95d8:
                    (**(code **)(pcVar22 + -0x7810))
                              (*(int *)(pcVar22 + -0x7fc4) + 0x4570,0x5c8,
                               *(int *)(pcVar22 + -0x77f0) + -0x33a0);
                    goto LAB_000e95f4;
                  }
                  pcVar15 = pcVar20 + iStack_24;
                  uVar6 = (uint)*(ushort *)(pcVar15 + 0xe);
                  if (uVar6 < 0xff00) {
LAB_000e92ac:
                    if (uVar6 == 0) goto LAB_000e910c;
                    iVar2 = *(int *)(pcStack_98 + -0x77f0);
                    pcVar22 = pcStack_98;
                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e962c;
                    if (*(int *)(piVar7[0xe] + uVar6 * 4) == 0) goto LAB_000e91a4;
                    cVar1 = pcVar15[0xc];
                  }
                  else {
                    if (uVar6 == 0xffff) {
                      iVar2 = piVar7[0xc];
                      pcStack_88 = pcVar3;
                      pcStack_84 = pcVar20;
                      pcStack_80 = pcVar15;
                      if (iVar2 == 0) {
                        iVar2 = (**(code **)(*piVar7 + 0x6c))(piVar7);
                        piVar7[0xc] = iVar2;
                      }
                      uVar6 = (**(code **)(pcStack_98 + -0x7790))(iVar2,piVar7,pcStack_88);
                      pcVar3 = pcStack_88;
                      pcVar20 = pcStack_84;
                      pcVar15 = pcStack_80;
                      goto LAB_000e92ac;
                    }
LAB_000e910c:
                    cVar1 = pcVar15[0xc];
                  }
                  pcVar22 = pcStack_98;
                  if (((byte)cVar1 & 0xf) != 3) {
                    iVar2 = *(int *)(pcStack_98 + -0x77f0);
                    if (pcVar3 < (code *)(piVar7[0x3b] - piVar7[0x3a] >> 4)) {
                      pcVar20 = pcVar20 + piVar7[0x3a];
                      if ((*(int *)pcVar20 != 0) && (*(int *)pcVar20 != -2)) {
                        iVar11 = *(int *)(pcStack_98 + -0x77f0);
LAB_000e9238:
                        pcVar20 = (code *)(*(int *)(pcStack_98 + -0x7fc4) + 0x4570);
                        (**(code **)(pcStack_98 + -0x7810))(pcVar20,0x71f,iVar11 + -0x48c0);
                      }
                      *(int *)pcVar20 = -2;
                      uStack_90 = uStack_90 & 0xffffff;
                      (*unaff_s2)(iStack_20,unaff_s7);
                      goto LAB_000e90a8;
                    }
                    goto LAB_000e95c0;
                  }
                  if (*(code **)(*piVar7 + 0x60) == unaff_s8) {
                    if ((uint)(piVar7[0xf] - piVar7[0xe] >> 2) <= uVar6) goto LAB_000e95d8;
                    iVar2 = *(int *)(piVar7[0xe] + uVar6 * 4);
                    uVar6 = *(uint *)(iVar2 + 0x98);
                  }
                  else {
                    iVar2 = (**(code **)(*piVar7 + 0x60))(piVar7,uVar6);
                    uVar6 = *(uint *)(iVar2 + 0x98);
                  }
                  *(uint *)(iVar2 + 0x98) = uVar6 & 0x7fffffff | 0x80000000;
                  uStack_90 = CONCAT13(1,uStack_90._1_3_);
                  (*unaff_s2)(iStack_20,unaff_s7);
                }
                else {
                  uStack_90 = uStack_90 & 0xffffff;
                  (*unaff_s2)(iStack_20,unaff_s7);
                }
LAB_000e90a8:
                unaff_s5 = unaff_s5 + 1;
                *(int *)(iStack_20 + 0xc) = *(int *)(iStack_20 + 0xc) + 1;
                puStack_38 = puStack_38 + 3;
                pcVar3 = param_1;
              } while (param_1 != unaff_s5);
            }
          }
          return pcVar3;
        }
        if (((*(char *)(*(int *)(**(int **)(pcVar4 + 0x3d8b40) + 8) + 0x52e9) == '\0') ||
            ((*(uint *)(puVar8 + 0x28) & 0xe000) != 0)) ||
           (-1 < *(int *)(*(int *)(puVar8 + 8) + 0x2c))) {
          iVar2 = piVar5[5];
        }
        else {
          if ((*(uint *)(puVar8 + 0x28) & 0x70000000) != 0x20000000) {
            return (code *)0x1;
          }
          iVar2 = piVar5[5];
        }
        if (iVar2 == 0) {
          piVar5 = (int *)(puVar8 + 0x1c);
        }
        else {
          piVar5 = (int *)(puVar8 + 0x1c);
          if (*(int *)(iVar2 + 0x8c) != 0) {
            iVar2 = *(int *)(puVar8 + 0x50);
LAB_000e8f24:
            if (iVar2 == -1) {
              return (code *)0x1;
            }
            pcVar4 = (code *)FUN_000d05e4(puVar8,*(int *)(puVar8 + 0x14) != 0,0);
            return pcVar4;
          }
        }
        do {
          if (*piVar5 == 0) {
            iVar2 = piVar5[1];
            goto LAB_000e8f24;
          }
          piVar5 = (int *)piVar5[2];
        } while (piVar5 != (int *)0x0);
      }
      return (code *)0x1;
    }
    if (((*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x52e9) == '\0') ||
        ((*(uint *)(param_1 + 0x28) & 0xe000) != 0)) ||
       (-1 < *(int *)(*(int *)(param_1 + 8) + 0x2c))) {
      iVar2 = param_4[5];
    }
    else {
      if ((*(uint *)(param_1 + 0x28) & 0x70000000) != 0x20000000) {
        return (code *)0x1;
      }
      iVar2 = param_4[5];
    }
    if (iVar2 == 0) {
      pcVar3 = param_1 + 0x1c;
    }
    else {
      pcVar3 = param_1 + 0x1c;
      if (*(int *)(iVar2 + 0x8c) != 0) {
        iVar2 = *(int *)(param_1 + 0x50);
LAB_000e8d84:
        if (iVar2 == -1) {
          return (code *)0x1;
        }
        pcVar4 = (code *)FUN_000d05e4(param_1,*(int *)(param_1 + 0x14) != 0,0);
        return pcVar4;
      }
    }
    do {
      if (*(int *)pcVar3 == 0) {
        iVar2 = *(int *)(pcVar3 + 4);
        goto LAB_000e8d84;
      }
      pcVar3 = *(code **)(pcVar3 + 8);
    } while (pcVar3 != (code *)0x0);
  }
  PTR_do_gold_unreachable_004c1a30 = pcVar4;
  return (code *)0x1;
}

